求一个数组重复出现次数最多的元素以及下标位置

来源:互联网 发布:淘宝爆款计划表 编辑:程序博客网 时间:2024/06/04 19:12

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>数组重复次数</title></head><body><script language="JavaScript">/*找出一个数组里面出现最多的一个和这个数组出现的位置*/var array=["m","a","a","a","b","b","b","c","c","c","e","1","2"];//原数组数;for(var w=0;w<array.length;w++){    document.write(array[w]+" ");}document.write("<br>");var array1=[];//定义一个array1数组,用于复制array数组;var array2=[];//定义一个array2数组,用于存放数组中每个元素出现的次数;//复制数组;for(var i=0;i<array.length;i++){    array1[i]=array[i];}//存放元素出现个数;var a=0;for(var j=0;j<array.length;j++) {    for (var k = 0; k < array1.length; k++) {        if (array[j] == array1[k]) {            a++;        }     }    array2[j]=a;     a=0;}//设置最多一个出现的次数是max;var max=0;for(var m=0;m<array2.length;m++){ if(array2[m]>=max){      max=array2[m];     }}//输出元素出现最多的位置;var array3=[];document.write("位置为:");for(var n=0;n<array2.length;n++) {    if (max == array2[n]) {        array3.push(n);        document.write(n + " ");    }}document.write("<br>");//把最多的元素添加;var array4=[];for(var x=0;x<array3.length;x++){    array4.push(array[array3[x]]);}//过滤重复数据;var array5 = [];for(var i = 0,len = array4.length;i < len;i++){    ! RegExp(array4[i],"g").test(array5.join(",")) && (array5.push(array4[i]));}document.write("元素出现次数最多的该元素为:");for(var y=0;y<array5.length;y++){    document.write(array5[y]+" ");}</script></body></html>


1 0
原创粉丝点击