iOS 开发算法篇

冒泡排序

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

    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]);
    }

未完待续

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 概述:排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部...
    每天刷两次牙阅读 3,870评论 0 15
  • 概述 排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部...
    蚁前阅读 5,340评论 0 52
  • 关于算法的想法 由于面试可能需要手写算法,网上搜罗了一些资料,整理了下算法的OC的实现代码,虽然平时开发中一般用不...
    洋_iOS阅读 11,892评论 14 145
  • 1 马上到年底了,又到了一年一度该向父母交差的时候。回家过年的期盼被“适婚年龄”的标签压得满是不安,不愿意回家和特...
    圣笔洛阅读 649评论 0 4
  • 她是一束微光,竭尽毕生精力,为了这个国家的教育。 当昨晚于北京返沪的动车上获悉噩耗时,我的双手颤抖不止,我很难以想...
    互加计划_陈嘉谊阅读 7,979评论 13 15

友情链接更多精彩内容