//通过Map 类实现,通过键值对的方式,可以将输入的字符串的每一个字符,作为键,每个字符出现的次数作为值:如下: public class Find { public static void main(String[] args){ String scan=new Scanner(System.in).nextLine();//获取键盘上输入的字符串: Map<Character,Integer> map = new HashMap<Character,Integer>();//…
最近面试总是刷到这个题,然后第一次的话思路很乱,这个是我个人思路 for循环里两个 if 判断还可以优化 var maxLength = 0; var maxStr = ''; var count = 1; var stringList = 'adsafsfgadsdaasssssaasssdfssss'; // 首先对字符串进行排列,方便比较 stringList = stringList.split('').sort(); // 比较字符串相邻位置是否相同 for (let i = 0; i…
1.给出任意一个字符串,打印一个最长子串字符串及其长度,如果有相同长度的子字符串,都要一起打印出来,该子字符串满足以下条件, 第一个字母和最后一个字符是第一次重复 这个子字符串的中间字母没有重复 这个子字符串是满足条件里面的最长的 如: adsasadmasd 中满足条件的是dmasd import re def maxsubstring(s): res_list=[] max_len=0 for i in range(len(s)): index=s[i+1:].find(s[i]) if i…
function getCount(str) { for(var code=32;code<128;code++){ var mych=String.fromCharCode(code); var count=0; for(var i=0;i<str.length;i++){ var ch=str.charAt(i); if(ch===mych){ count++; } } if(count>0){ console.log("字符"+mych+"出现了&qu…
方法一: var str="sdfseresssssdssdfsa"; var arr=[]; var max=0; var maxk; for(var i=0;i<str.length;i++){ var k=str[i]; if(!arr[k]){ arr[k]=str.split(k).length-1; } } for(var n in arr){ if(max < arr[n]){ max=arr[n]; maxk=n; } } console.log("…