摘要: 选择排序之简单选择排序和堆排序 选择排序的思想非常直接,不是要排序么?那好,我就从所有序列中先找到最小的,然后放到第一个位置。之后再看剩余元素中最小的,放到第二个位置……以此类推,就可以完成整个的排序工作了。可以很清楚的发现,选择排序是固定位置,找元素。相比于插入排序的固定元素找位置,是两种思维方式 阅读全文
posted @ 2017-08-25 16:35 青儿哥哥 阅读(5709) 评论(0) 推荐(0) 编辑
摘要: 异或有两个很重要的性质: 1、 A^A = 0; 2、A^0 = A; 利用这两个性质,我们就能够利用异或进行两个值的交换。 代码如下: 阅读全文
posted @ 2017-08-25 13:33 青儿哥哥 阅读(1162) 评论(0) 推荐(0) 编辑
摘要: C语言中的按位移动及其简单应用 在C语言中按位左移用”<<”表示,按位右移用”>>”表示。 按位左移和按位右移运算经常被用来替换乘二和除二运算,但是要注意,这两者之间并不完全等价。下面就分析一下: 首先明确,按位移动分为逻辑移动和算术移动,具体就是:逻辑左移、算术左移;逻辑右移、算术右移。 算术左移 阅读全文
posted @ 2017-08-25 11:10 青儿哥哥 阅读(5725) 评论(0) 推荐(0) 编辑