1.给你一个字符串,寻找该字符串中出现次数最多的字母和出现次数。比如:"aadfdfdfxcvbvbeeeessscv"
1 function test(str){ 2 var arr = new Array(); 3 var i = 0,temp=0,word=""; 4 5 while(str.charAt(0)){ 6 arr[i] = str.charAt(0)+ "="+ (str.split(str.charAt(0)).length-1); 7 str = str.split(str.charAt(0)).join(""); 8 i++; 9 } 10 11 alert(arr); 12 13 for(i = 0,temp=0;i<arr.length;i++){ 14 if(temp<arr[i].split("=")[1]) 15 { 16 temp = arr[i].split("=")[1]; 17 word = arr[i].split("=")[0] 18 } 19 } 20 alert("Word:"+word+" frequency:"+temp); 21 22 }
思路: 灵活运用JS中的charAt(),split()函数, 精髓是while循环中的语句。思想值得借鉴。
2、去掉数组中重复的元素
Array.prototype.removeSame = function(){ var temp={}; for(var i=0;i<this.length;i++){ if(temp[this[i]]){ this.splice(i,1); i--; } else temp[this[i]]=1; } }
注意:splice的应用。