
数据结构与算法
qq_25923235
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
不用中间变量交换a和b的值
定理:如果 a ^ b = c,则 a ^ c = b,b ^ c = a; a ^ b = [(~a) & b] | [(~b) & a]异或真值表 a b 结果 1 1 0 0 0 0 1 0 1 0 1 1 总结:相同为 0 ;不同为 1。 例子: 若 a = 5,b = 6,用4位二进制来表示 a 和 b;原创 2016-09-21 09:07:16 · 3676 阅读 · 0 评论 -
冒泡排序原理
样本数据 6 8 3 4 2 升序排列 依次从样本中取两个数作比较,如果前面的数大于后面的数,则交换这两个数的位置;否则继续往下取数。 例如:6 8 3 4 2 先比较 6 和 8,6 < 8,不交换 6 和 8 的位置,再 8 和 3 进行比较。 降序排列同理 第一轮 6 8 3 4 2 (6 < 8,不交换,取下一个数)原创 2016-09-23 12:21:21 · 272 阅读 · 0 评论 -
求两个数的最大公因数,欧几里得算法
直接上代码//java public long gcd(long m, long n){ while (n != 0){ long rem = m % n; m = n; n = rem; } return m; }欧几里得算法分析: 设 m = 115,n = 15原创 2016-09-21 10:53:14 · 912 阅读 · 0 评论 -
java基于有序链表的优先级队列实现
1.准备Link.class类中包含数据项(为了简单,这里的数据项就为int值)和下一个Link节点的引用/**链表中的节点类,保存数据和节点信息*/public class Link{ int priority;//优先级值 Link next;}2.实现有序链表OrderLinkList.class类用来处理节点之间的关系public class OrderLinkList原创 2016-10-08 18:24:09 · 3570 阅读 · 1 评论