字符串,数组常见例题
2019-08-16 21:47
831 查看
1:在一串字符串中找出最长的字符
var st="The quick brown fox jumped bcaked jumped abscefg over the lazy dog 15625765675276"; function zifuchuanmax(str){ var arr=str.split(" ");//将字符串转化为数组 var max=arr[0]; for(var i=1;i<arr.length;i++){ if(max.length<arr[i].length){ max=arr[i]; } } return max; } console.log(zifuchuanmax(st));//15625765675276
做题方法:首先利用split方法将字符串转化为数组,定义一个变量,将数组的第一个元素赋值给这个变量,然后用for循环将数组中的元素与该变量依次比较,如果比该变量长,则将该元素赋值给变量
2:数组去重,将一个数组中相同的元素去掉
var arr = [1, 1, 2, 3, 4, 3, 5, 5, 6, 7, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9]; function szqc(array){ for(var i=0;i<array.length;i++){ var same=array[i]; for(var k=i+1;k<array.length;k++){ if(same==array[k]){ array.splice(k,1);//删除元素之后,后面元素会自动补位,但下次循环系统会自动跳过该位置元素,所以补位元素就会被忽略 k--;//退回去会将补位元素不被忽略 } } } return array; } console.log(szqc(arr));// [1, 2, 3, 4, 5, 6, 7, 8, 9]
3:字符串翻转
方法一:
var str = "abcdefghi"; console.log(str.split("").reverse().join(""));//ihgfedcba
将字符串转化为数组,然后利用数组的方法reverse将数组翻转,然后再用join()将其转化为字符串
方法二:
var str = "abcdefghi"; function fanzhuan(str){ var dao="";//定义一个空字符串 for(var i=str.length-1;i>=0;i--){ dao+=str.charAt(i); } return dao; } console.log(fanzhuan(str));//ihgfedcba
在函数中定义一个新的空字符串,然后利用for循环,倒叙取出原字符串中元素,叠加
4:
统计一个字符串中出现最多的及其出现的次数给出一个字符串,统计出现次数最多的字母。如:“cccccccccasdfssaaasasasasaadddddddd”,
var str1 = "cccccccccasdfssaaasasasasaadddddddd"; function findChar(str) { var ss = moveNumber(str.split(""));//先利用数组去重,将每个元素取出 /*[a,c,f,h]*/ var list = []; for (var i = 0; i < ss.length; i++) { var count = 0; for (var index in str) { if (ss[i] == str.charAt(index)) { count++; }// } list.push([ss[i], count]); } var tong = 1; for (var i = 0; i < list.length; i++) { if (list.length <= tong)break; if (list[i][1] > list[i + 1][1]) { list.splice(i + 1, 1); i--; } else if (list[i][1] < list[i + 1][1]) { list.splice(i, 1); i--; } else { tong++; } } return function () { var strlist = ""; for (var i = 0; i < list.length; i++) { strlist += list[i][0] + "---" + list[i][1] + "个" } return strlist; } } console.log(findChar(str1)());//c---9个a---9个d---9个
相关文章推荐
- C++中字符串,数组常见操作的接口
- 常见例题:翻转数组
- 数组和字符串常见操作
- W3Cschool初级脚本算法难题解析——JS对数组和字符串的常见操作
- LinuxC简谈之数组、字符串与指针相关的常见错误与问题
- js 常见数组和字符串的操作
- 02 ”hogwarts“击败js吧—.—数组和字符串常见方法
- java常用流处理工具StreamTool 常见的InputStream流转字符串, 转字节数组等等
- 剑指offer-第二章数据结构(数组,字符串,链表,树,栈与队列)及例题
- 常见对象-把int数组拼接字符串的案例
- C语言字符串数组的例题
- 字符串与数组03-例题3 Palindromes,UVa401
- javascript数组和字符串的常见用法
- 常见对象_把int数组拼接成字符串的案例改进版
- 算法竞赛入门经典(第二版)第三章数组和字符串中竞赛题目选讲例题3-3回文词
- OC-字符串、数组常见问题
- 算法竞赛入门经典(第二版)-刘汝佳-第三章 数组与字符串 例题+习题(17/18)
- C语言数组字符串的许多例题
- javascript数组和字符串的常见用法
- 数组,字符串的常见操作