美文网首页数据结构
iOS 开发算法篇

iOS 开发算法篇

作者: 本本的开心牧场 | 来源:发表于2018-09-17 18:01 被阅读0次

    冒泡排序

    比较相邻的元素。如果第一个比第二个大,就交换他们两个。最大的数会逐个被放到最后直到排序结束。

        int a[10]={12 ,43,9,13,67,98,101,89,3,35};//十个数的无序数列
        int i,j,t;
        
        for (i = 0; i<10-1; i++) {
    
            for (j = 0; j<10-1-i; j++) {
    
                if (a[j]>a[j+1]) {
                    t = a[j];
                    a[j] = a[j+1];
                    a[j+1] = t;
                }
    
            }
    
        }
    
    //打印
        for (i = 0; i<10; i++) {
            printf("%d\n",a[i]);
        }
    

    选择排序法

    每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。

        int a[10]={12 ,43,9,13,67,98,101,89,3,35};//十个数的无序数列
        int i,j,t,min;
        
        for (i = 0; i<10-1; i++) {
    //    假设最小值下标为i
            min = i;
            
            for (j = i; j<10; j++) {
                
                if (a[j]<a[min]) {
                    min = j;
                }
             
                
            }
            
            if (min != i) {
                t = a[min];
                a[min] = a[i];
                a[i] = t;
            
            }
            
        }
         
        for (i = 0; i<10; i++) {
            printf("%d\n",a[i]);
        }
    

    未完待续

    相关文章

      网友评论

        本文标题:iOS 开发算法篇

        本文链接:https://www.haomeiwen.com/subject/xxsrnftx.html