2019独角兽企业重金招聘Python工程师标准>>>

插入排序:

自个儿在写实现插入排序的时候,发现思维卡机了。 卡机的结果:

void insertion_sort(int array[], int first, int last) {int i, j;for (i = first; i < last; ++i) {int tmp = array[i];for (j = i-1; j >= first; --j) {if (array[j] < tmp) {   // MMD 这个判断干嘛不加到上面一句呢?? ::(array[j+1] = tmp;break;}elsearray[j+1] = array[j];}if (j == first-1) {array[first] = tmp;}}
}

整理后:

void insertion_sort(int array[], int first, int last) {int i, j;for (i = first+1; i < last; ++i) {int tmp = array[i];for (j = i-1; j >= first && array[j] > tmp; --j) {array[j+1] = array[j];}array[j+1] = tmp;}
}

你曾犯傻了吗?

转载于:https://my.oschina.net/grassyue/blog/170633

关于for中思维卡机的小悲剧相关推荐

  1. java犯的小错误_[Java教程]十个JavaScript中易犯的小错误,你中了几枪?

    [Java教程]十个JavaScript中易犯的小错误,你中了几枪? 0 2015-06-01 12:00:19 序言 在今天,JavaScript已经成为了网页编辑的核心.尤其是过去的几年,互联网见 ...

  2. E Groundhog Chasing Death(2020牛客暑期多校训练营(第九场))(思维+费马小定理+质因子分解)

    E Groundhog Chasing Death(2020牛客暑期多校训练营(第九场))(思维+费马小定理+质因子分解) 链接:https://ac.nowcoder.com/acm/contest ...

  3. 计算机思维相关实例,几个培养计算思维的教学小案例

    原标题:几个培养计算思维的教学小案例 计算思维的核心部分 BBC概述了计算思维的四大基石:分解.模式识别.抽象和算法. 分解:让孩子们将复杂的问题分解成更小.更简单的问题. 模式识别:引导孩子们建立相 ...

  4. rust熔炉怎么带走_Rust游戏中12个实用小技巧,包含无伤下坠、直梯爬楼

    Rust是一款第一人称生存网络游戏,有点像野外求生,但这款游戏内容则更加丰富.刺激.血腥. 在这款游戏中玩家的第一任务就是活下来,而想要活下来你将要接受饥饿.干渴.寒冷等.游戏中玩家需要建造自己的庇护 ...

  5. mysql中begin end中变量定义_DECLARE只能用于BEGIN…END的开头部分定义局部变量,其作用范围只能在该BEGIN…END中。_学小易找答案...

    [单选题]表达式select ((6%(7-5))+8)*9-2+(5%2) 的运算结果是______. [判断题]所有变量名@var1.@var2等必须以1个"@"开头,可以由当 ...

  6. C++中STL中的大、小、相等概念

    1.STL的大.小.相等概念 STL中关联容器内部的元素是排序的.STL中的许多算法也涉及排序.查找.这些容器和算法都需要对元素进行比较,有的比较是否相等,有的比较元素大小. 在STL中,默认情况下, ...

  7. 直接在PDF文件中改变字体的小技巧

    2019独角兽企业重金招聘Python工程师标准>>> PDF文件大家接触的还是蛮多的,今天要给大家介绍一下直接在PDF文件中改变字体的小技巧,想来应该有蛮多小伙伴需要的. 具体操作 ...

  8. 在数组中找到第 k 小的数

    在数组中找到第 k 小的数 [要求] 如果 arr 长度为 N,要求时间复杂度为 O(N),额外空间复杂度为 O(1). public static int[] getMinKNumByHeap(in ...

  9. 工作中这些实用的小技巧,90%的程序员不知道

    工作中这些实用的小技巧,90%的程序员不知道 Linux 有些Linux命令我们是经常用的,但是这些命令有的特别长(如进入层级特别深的项目部署目录),这时就可以为这些命令定义一个别名 系统级别定义的别 ...

最新文章

  1. 虐狗日记:和小冰同居的日子
  2. 【C语言】算数操作符 移位操作符 以及 sizeof单目操作符讲解
  3. android 第三方登录 --- QQ
  4. 2019-05-23 IRIS嗅探器;用IRIS嗅探数据;
  5. 面试了3个 85前 的嵌入式软件工程师
  6. 事务的基本概念,Mysql事务处理原理
  7. python3 random模块_Python3 中 random模块
  8. FPGA跨时钟域处理方法延迟法
  9. 三星Galaxy S21 FE现身Geekbench:骁龙888+6GB运存
  10. linux通过dd命令把分区,linux dd命令使用详解
  11. 【学术】施一公分享自身经验:如何提高自己的专业英文文献阅读能力
  12. R语言ETL工程系列:检索(select)
  13. 批量下载哨兵数据的方法探索
  14. 网络工程师必备工具之超级终端
  15. 史上最详细的梯度下降优化算法介绍(从SGD到Adam至Lookahead)
  16. 湘潭大学计算机分数线,湘潭大学录取分数线2021是多少分(附历年录取分数线)
  17. Linux安装Siege
  18. 在eclipes 中配置python
  19. licode的ios最新版本的接入
  20. 岁月温柔-6 出院后忐忑不安的妈妈

热门文章

  1. hbase 租约超时及rpc超时出现的问题
  2. 一篇很全面的freemarker教程
  3. storm在运行过程中会自动调整拓扑吗_干粉灭火器灌装机的操作你知道吗?
  4. Win64 驱动内核编程-6.内核里操作注册表
  5. 【Android Gradle 插件】Android Plugin DSL Reference 离线文档下载 ( GitHub 下载文档 | 查看文档 )
  6. 【C 语言】指针间接赋值 ( 指针作为 函数参数 的意义 | 间接赋值 代码示例 )
  7. 【Android 逆向】Frida 框架 ( Frida 框架使用环境 | Frida 框架作用 | Frida 框架模块 )
  8. 【Flutter】Flutter 混合开发 ( 安卓端向 Flutter 传递数据 | FlutterFragment 数据传递 | FlutterActivity 数据传递 )
  9. 【Google Play】正式版上架流程 ( 创建版本 | 设置国家地区 | 发布正式版 )
  10. 【错误记录】p7zip 交叉编译 Android 版本 NDK 报错 ( error: case value evaluates to -2 , which cannot be narrowed )