求数组中的第三大数

来源:互联网 发布:win7系统数据恢复 编辑:程序博客网 时间:2024/06/09 18:18
<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>Title</title></head><body>    <script>        //用sort方法求数组的第三大值        var arr=[3,2,5,8,4,7,6,9];        function sortNumber(a,b) {            return b-a;        }        console.log('第三大得数:'+arr.sort(sortNumber)[2]);        //求数组中的最大值和次大值        var arr=[3,2,5,8,4,7,6,9];        var maxF,maxS;        maxF=arr[0];        maxS=arr[1];        for (var i=0;i<arr.length;i++){            if(arr[i]>maxF){                maxS=maxF;                maxF=arr[i];            }        }        console.log('求数组中的最大值和次大值:'+'maxF='+maxF+','+'maxS='+maxS);        //求数组中的最大值、次大值以及第三大值        var arr=[3,2,5,8,4,7,6,9];        var maxF=arr[0];        var maxS=arr[1];        var maxT=arr[2];        var maxSTemp=0,maxFTemp=0;//创建一个中间变量 用于存放未被修改的第二大        for(var i=0;i<arr.length;i++){            if(arr[i]>maxF){                maxFTemp=maxF;//将第一大存储下来                maxSTemp=maxS;//将第二大存储下来                maxS=maxFTemp;//将最大赋给次大                maxT=maxSTemp;//将第二大赋给第三大                maxF=arr[i];//修改当前最大值            }            if(maxT<arr[i]&&arr[i]<maxS){                maxT=arr[i];//修改第三大            }            if(maxS<arr[i]&&arr[i]<maxF){                maxT=maxS;//将第二大赋给第三大                maxS=arr[i];//修改第二大                    }            }        }        console.log('maxF='+maxF+','+'maxS='+maxS+','+'maxT='+maxT);    </script></body></html>

原创粉丝点击