热门
最新
红包
立Flag
投票
同城
我的
发布
dj Yang
5 年前
trueu013516331
请问ucos消息队列,case 消息{可以放while循环吗?会不会影响下面的case 消息}
下一条:
排序算法3-插入排序这个排序好难理解啊,想了好久好久,以下是目前我对这个排序的一点看法1.第一步地读入就不说了2.先来理解一下什么是插入排序,插入排序我认为就是把一个数字不断地和前面的数字进行比较,并把它插入到前面的算法。3.每一种排序到最后我认为都应该是有序的,这样才能方便用for循环输出,就是一趟一趟地比较完了之后,最后留下的这一串数字一定是有序的这是一个for循环和while循环的嵌套4.第一个for循环的意思是你要指定一个数,要让这个数往前面去插入,所以我们有了key=a[i] j=i-1。而且这样的话随着for循环地进行,i越来越大,我们就可以一步一步地从第二个开始插入,到第三个开始插入,直到第n个开始插入5.你要用key来进行比较,因为你把a[i]赋给了key,你就要通过j把key的值放到正确的位置6.接下来的这个while循环就是要开始进行插入的比较了,只有前一个数大于key,(注意接下来不是互换位置,而是把前一个位置上的数赋给后一个位置),就把它赋给后一个位置,而后继续比较key与再前一个数的值,所以要j--。7.最后a[j+1]的含义是因为while循环终止的条件是j=-1或a[j]<=key,那这样的话我们就需要把key放在a[j]的后面,所以是a[j+1]=key第二张图演示了第6步的例子,不是互换位置,而是把前一个数赋给后一个位置代码示例如下
立即登录