为什么没有正常排序

来源:5-9 递归函数练习

慕粉0375278

2019-12-07 12:18

排序不正确的原因是什么呢http://img.mukewang.com/5deb27a70001537119201080.jpg

写回答 关注

1回答

  • 慕无忌8885290
    2020-11-10 21:48:02

    你想用什么排序算法?

    排序的时候,你有两层循环,其中内层循环i无论是for的小括号里还是后面大括号掉换都没有外层for循环k的参与,那么这个k就是没有作用的东西,所以肯定是不对的。

    举个例子:

    function p(a){

        var n = a.length; 

        for(k = 1;k<n;k++){

            for(i = k;i>0;i--){//这里,令i=k

                if(a[i]<a[i-1])//k 和前一位 k - 1比较,

                   swap(a,i,i-1);//将较小的调到前面

            }

        }

    }

    function swap(a,f,s){

        t = a[f];

        a[f] = a[s];

        a[s] = t;

    }


C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926026 学习 · 20793 问题

查看课程

相似问题