- 博客(6)
- 资源 (6)
- 收藏
- 关注
转载 java 的HashMap底层数据结构
HashMap也是我们使用非常多的Collection,它是基于哈希表的 Map 接口的实现,以key-value的形式存在。在HashMap中,key-value总是会当做一个整体来处理,系统会根据hash算法来来计算key-value的存储位置,我们总是可以通过key快速地存、取value。下面就来分析HashMap的存取。一、定义 HashMap实现了Map接口...
2018-09-28 10:03:10 186
原创 快速计算一个整数二进制中含1的个数
public class Solution { public int NumberOf1(int n) { int count = 0; while(n!= 0){ count++; n = n & (n - 1); } return count; }}...
2018-09-10 15:45:51 1210 2
原创 不使用运算符来求两个数字的和
public class Solution { public int Add(int num1,int num2) { while (num2!=0) { int temp = num1^num2; num2 = (num1&num2)<<1; num1 = temp; ...
2018-09-10 08:29:37 482
转载 快速排序
有没有既不浪费空间又可以快一点的排序算法呢?那就是“快速排序”啦!光听这个名字是不是就觉得很高端呢。假设我们现在对“6 1 2 7 9 3 4 5 10 8”这个10个数进行排序。首先在这个序列中随便找一个数作为基准数(不要被这个名词吓到了,就是一个用来参照的数,待会你就知道它用来做啥的了)。为了方便,就让第一个数6作为基准数吧。接下来,需要将这个序列中所有比基准数大的数放在6的...
2018-09-07 10:21:15 179
原创 插入排序
原理:插入排序是在一个已经有序的小序列的基础上,一次插入一个元素。当然,刚开始这个有序的小序列只有1个元素,就是第一个元素。比较是从有序序列的末尾开始,也就是想要插入的元素和已经有序的最大者开始比起,如果比它大则直接插入在其后面,否则一直往前找直到找到它该插入的位置。如果碰见一个和插入元素相 等的,那么插入元素把想插入的元素放在相等元素的后面。所以,相等元素的前后顺序没有改变,从原无序序列出去的顺...
2018-09-06 11:28:40 242
原创 选择排序
选择排序包括直接选择排序与堆排序,本文只介绍简单的直接选择排序,直接选择排序的时间复杂度为,并且选择排序的算法是不稳定的。 原理:选择排序的是在第i个元素后的数组中找到最小值,然后将该最小值与第i个元素互换位置。 基本思想:给定数组:int[] arr={里面n个数据};第1趟排序,在待排序数据arr[1]~arr[n]中选出最小的数据,将它与arrr[1]...
2018-09-06 10:35:54 212
cryptominisat类库
2018-06-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人