zoukankan      html  css  js  c++  java
  • LeetCode 37 Count and Say

    The count-and-say sequence is the sequence of integers beginning as follows:
    1, 11, 21, 1211, 111221, ...

    1 is read off as "one 1" or 11.
    11 is read off as "two 1s" or 21.
    21 is read off as "one 2, then one 1" or 1211.

    Given an integer n, generate the nth sequence.

    Note: The sequence of integers will be represented as a string.

    public class Solution {
    	public String countAndSay(int n) {
    		if (n == 0)
    			return "";
    		StringBuffer sb = new StringBuffer("1");
    		StringBuffer tempSB = new StringBuffer();
    
    		for (int i = 1; i < n; i++) {
    			int counter = 1;
    			char tempChar = sb.charAt(0);
    			for (int j = 1; j < sb.length(); j++) {
    				if (sb.charAt(j) == tempChar)
    					counter++;
    				else {
    					tempSB.append(""+counter + tempChar);
    					tempChar = sb.charAt(j);
    					counter = 1;
    				}
    			}
    			tempSB.append(""+counter + tempChar);
    			sb.delete(0, sb.length());
    			sb.append(tempSB);
    			tempSB.delete(0, tempSB.length());
    		}
    		return sb.toString();
    	}
    }
    或者

    	public String countAndSay(int n) {
    		if (n == 0) return "";
    		StringBuffer sb = new StringBuffer("1");
    		StringBuffer tempSB = new StringBuffer();
    
    		for (int i = 1; i < n; i++) {
    			int counter = 1;
    			char tempChar = sb.charAt(0);
    			for (int j = 1; j < sb.length(); j++) {
    				if (sb.charAt(j) == tempChar)
    					counter++;
    				else {
    					tempSB.append(Integer.toString(counter)+ tempChar);
    					tempChar = sb.charAt(j);
    					counter = 1;
    				}
    			}
    			tempSB.append(Integer.toString(counter)+ tempChar);
    			sb.delete(0, sb.length());
    			sb.append(tempSB);
    			tempSB.delete(0, tempSB.length());
    		}
    		return sb.toString();
    	}



  • 相关阅读:
    oracle查看所有角色
    jQuery 异步提交表单实例解析
    oracle查看用户系统权限
    js中日期操作大全
    oracle 查询用户下所有表
    JS语法字典
    JS定时器例子讲解
    开源软件
    rpm的使用
    lvs+keepalived和haproxy+heartbeat区别
  • 原文地址:https://www.cnblogs.com/yjbjingcha/p/6764455.html
Copyright © 2011-2022 走看看