zoukankan      html  css  js  c++  java
  • leetcode38.外观数列(循环匹配)

    package newleetcode;
    //未完全理解
    public class LeetCode38 {
    public String viewDate(int n){
    //初始化str
    String str="1";
    //通过循环修改数组
    for(int i=2;i<=n;i++){
    //每次循环初始化builder
    StringBuilder builder=new StringBuilder();
    //将初始值赋给pre
    char pre= str.charAt(0);
    //初始化count
    int count=1;
    /**
    * 依据for循环依次描述数据,相同时count1
    * 不相同时即更新数据
    */
    for(int j=1;j<str.length();j++){
    //逐位比较
    char c=str.charAt(j);
    //若相等则count1
    if(c==pre){
    count++;
    }else {
    //若不等则先录入数据表示存在【countpre
    builder.append(count).append(pre);
    //被描述值更新
    pre=c;
    //count初始化
    count=1;
    }
    }
    //录入最后一位(pre)的描述,若存在多个pre,有count记录【描述数据最后一位】
    builder.append(count).append(pre);
    str=builder.toString();
    }
    return str;
    }

    public static void main(String args[]){
    LeetCode38 leetCode38=new LeetCode38();
    System.out.println(leetCode38.viewDate(1));
    System.out.println(leetCode38.viewDate(2));
    System.out.println(leetCode38.viewDate(3));
    System.out.println(leetCode38.viewDate(4));
    System.out.println(leetCode38.viewDate(5));
    }
    }
    /**数组123456,是从1开始比较,不是6,最里面的是里层,最外面的是外层,从里至外判断
    * leetcode提交代码
    * class Solution {
    * public String countAndSay(int n) {
    * //初始化str
    * String str="1";
    * //通过循环修改数组
    * for(int i=2;i<=n;i++){
    * //每次循环初始化builder
    * StringBuilder builder=new StringBuilder();
    * //将初始值赋给pre
    * char pre= str.charAt(0);
    * //初始化count
    * int count=1;
    *
    * //依据for循环依次描述数据,相同时count1
    * //不相同时即更新数据
    * for(int j=1;j<str.length();j++){
    * //逐位比较
    * char c=str.charAt(j);
    * //若相等则count1
    * if(c==pre){
    * count++;
    * }else {
    * //若不等则先录入数据表示存在【countpre
    * builder.append(count).append(pre);
    * //被描述值更新
    * pre=c;
    * //count初始化
    * count=1;
    * }
    * }
    * //录入最后一位(pre)的描述,若存在多个pre,有count记录【描述数据最后一位】
    * builder.append(count).append(pre);
    * str=builder.toString();
    * }
    * return str;
    * }
    * }
    */
  • 相关阅读:
    Python自动发邮件-yagmail库
    使用Network Emulator Toolkit工具模拟网络丢包测试(上)
    Fiddler实战之使用Fiddler模拟弱网环境(限速)
    Jmeter接口测试之SSHCommand测试Linux服务器资源文件信息
    Fiddler实战之将抓到接口导入Jmeter接口测试
    Could not get lock /var/lib/dpkg/lock
    OPMS是什么?
    Docker是什么?
    Docker容器中启动OPMS项目
    Docker容器部署Tomcat服务器
  • 原文地址:https://www.cnblogs.com/shudaixiongbokeyuan/p/13412951.html
Copyright © 2011-2022 走看看