//插入排序
public static void insertSort(int[] arr) {
// 遍历所有数字
for (int i = 1; i < arr.length; i++) {
int temp = arr[i];
int j;
if(arr[i-1]>temp) {
//不要写成arr[j-1]>temp&&j>0.因为当j=0的时候,表达式会先判断arr[0-1]>temp,然后再去判断后面的j>0,这样会报指针越界异常.但是如果先判断j>0,此时j=0,j>0判断的时候结果为false,便不会去判断arr[0-1]>temp这个表达式,也就不会出现arr[-1]的情况
for(j=i;j>0&&arr[j-1]>temp;j--) {
arr[j]=arr[j-1];
}
arr[j]=temp;
}
}
}

注意&&前后两个表达式有顺序的差别的更多相关文章

  1. ExtJs--13-- Ext.apply(src,apply) 和 Ext.applyIf(src,apply) 两个方法的使用和差别比較

    Ext.onReady(function(){ /* * Ext.apply(src,apply) 和 Ext.applyIf(src,apply) 两个方法的使用和差别比較 */ //Ext.app ...

  2. 有关C/C++中,表达式计算顺序的问题,以及表达式内部变量“副作用”问题(转)

    经常可以在一些讨论组里看到下面的提问:“谁知道下面C语句给n赋什么值?”m = 1; n = m+++m++;最近有位不相识的朋友发email给我,问为什么在某个C++系统里,下面表达式打印出两个4, ...

  3. js--函数声明和函数表达式--执行顺序

    思考: notice:在写JS代码的时候,有两种写法,一种是函数表达式,另外一种是函数声明方式.我们需要重点注意的是,只有函数声明形式才能被提升. function hoistFunction() { ...

  4. tp 中一个字段写两个表达式的写法

    $maps['deadline'] = array(array('gt',0),array('elt',$endTime), 'and');

  5. 《Web Development with Go》两个Middleware执行顺序

    也加了如果有认证时的执行流程: 一个错误, 一个正确. package main import ( "fmt" "log" "net/http&quo ...

  6. 如何比较两个SQL数据库的字段差别。

    程序好几个版本了,数据也弄出好好几版本,这下好了,原程序要升级,当然数据库也要升,可是里面已经有了大量的数据了,这时候怎么办.写了个存储过程来解决,一目了然. 因为2005及以上的数据库已经没有表sy ...

  7. 示例说明Oracle RMAN两种库增量备份的差别

    1差异增量实验示例 1.1差异增量备份 为了演示增量备份的效果,我们在执行一次0级别的备份后,对数据库进行一些改变. 再执行一次1级别的差异增量备份: 执行完1级别的备份后再次对数据库进行更改: 再执 ...

  8. Pytho中两种方式导入模块的差别

    1.使用import module,只是把模块导入,访问模块中的函数名或者是属性是必须使用点运算符(.)来访问,否则直接访问会提示找不到这些函数或者属性. 2.使用from numpy import ...

  9. 算法语言Scheme修订6报告 R6RS简体中文翻译

    算法语言Scheme修订6报告 R6RS简体中文翻译 来源 https://r6rs.mrliu.org/   MICHAEL SPERBERR. KENT DYBVIG, MATTHEW FLATT ...

随机推荐

  1. 前台ajax请求php后台返回成功却进error方法解决

    最近几天一直都在解决error问题,周末都没能好好过,悲痛万分,想逃走

  2. python----数据驱动ddt的使用

    一.安装ddtpip install ddt 二.数据驱动和代码驱动数据驱动:根据你提供的数据来进行测试,比如接口自动化测试框架ATP代码驱动:必须得写代码才能测试,比如unittest 三.使用数据 ...

  3. vue中的路由

           路由配置项:        import Router from ‘vue-router’                          1.path:路径              ...

  4. 学号 2018-2019-20175212 实验一 《Java开发环境的熟悉》

    学号 2018-2019-20175212 实验一 <Java开发环境的熟悉> 一.实验内容及步骤 1.使用JDK编译.运行简单的Java程序 mkdir 20175212exp1创建20 ...

  5. spring中的AOP实验(二)

    软件151  王帅 1.目标对象的接口:IStudent.java  package  com.dragon.study;   public   interface  IStudent  {      ...

  6. Nginx做流媒体服务Windows版实现直播

    声明:网上有很多关于Linux系统的配置,这里就不记录了.刚开始搭建直播室,用的是Java语言, Java开源的流媒体服务有Red5,但是很久没更新了,而且文档较少不容易上手,对于直播功能相对要求较低 ...

  7. Java并发编程阅读笔记-锁和活跃性问题

  8. 7. Reverse Integer Add to List★

    题目内容: Reverse digits of an integer. Example1: x = 123, return 321Example2: x = -123, return -321 题目分 ...

  9. ajax请求, 前后端, 代码示例

    [博客园cnblogs笔者m-yb原创,转载请加本文博客链接,笔者github: https://github.com/mayangbo666,公众号aandb7,QQ群927113708] http ...

  10. sticky

    最近有点忘了position几个取值的内容,在这里简单总结一下. position的含义是指定位类型,取值类型可以有:static.relative.absolute.fixed.inherit和st ...