尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

芝士算法(模拟)

芝士算法(模拟) 目录替换所有问号提莫攻击Z字形变换外观数列数青蛙替换所有问号替换所有问号public String modifyString(String s) { char[] s1 s.toCharArray(); int n s.length(); for(int i 0 ; i n; i){ if(s1[i] ?){ for(char ch a ; ch z; ch ){ if((i 0 || ch ! s1[i - 1]) (i n - 1 || ch ! s1[i 1])){ s1[i] ch; break; } } } } return String.valueOf(s1); }提莫攻击提莫攻击public int findPoisonedDuration(int[] timeSeries, int duration) { int ret 0; for(int i 1 ; i timeSeries.length ; i){ int x timeSeries[i] - timeSeries[i - 1]; if( x duration) ret duration; else ret x; } return ret duration ; }Z字形变换Z字形变换public String convert(String s, int numRows) { int d 2 * numRows - 2,n s.length(); StringBuilder ret new StringBuilder(); if(numRows 1) return s; for(int i 0; in ; id) ret.append(s.charAt(i)); for(int k 1;knumRows - 1 ; k){ for(int i k, j d - i;jn || in ; id,jd){ if(i n) ret.append(s.charAt(i)); if(j n) ret.append(s.charAt(j)); } } for(int i numRows - 1; in ; id) ret.append(s.charAt(i)); return ret.toString(); }外观数列外观数列public String countAndSay(int n) { String ret 1; for(int i 1 ; i n ; i ){ StringBuilder tmp new StringBuilder(); int len ret.length(); for(int left 0,right 0; right len; ){ while(right len ret.charAt(left) ret.charAt(right)) right; tmp.append(Integer.toString(right - left)); tmp.append(ret.charAt(left)); left right; } ret tmp.toString(); } return ret; }数青蛙数青蛙public int minNumberOfFrogs(String croakOfFrogs) { char[] c croakOfFrogs.toCharArray(); String t croak; int n t.length(); int[] hash new int[n]; MapCharacter , Integer index new HashMap(); for(int i 0 ; i n ; i){ index.put(t.charAt(i) , i); } for(char ch : c){ if(ch t.charAt(0)){ if(hash[n - 1] ! 0) hash[n - 1]--; hash[0]; }else{ int i index.get(ch); if(hash[i - 1] 0) return - 1; hash[i - 1]--; hash[i]; } } for(int i 0; i n - 1 ; i){ if(hash[i] ! 0) return -1; } return hash[n - 1]; }
返回列表