
算法
sunny_sailor
JUSTDOIT
展开
-
负数如何转换成二进制
比如,假设有一 int 类型的数,值为5,那么,我们知道它在计算机中表示为:00000000 00000000 00000000 000001015转换成二制是101,不过int类型的数占用4字节(32位),所以前面填了一堆0。现在想知道,-5在计算机中如何表示? 在计算机中,负数以其正值的补码形式表达。什么叫补码呢?这得从原码,反码说起。 原码:一个整数,按照绝对原创 2012-12-25 12:46:05 · 2446 阅读 · 0 评论 -
Java中hashmap和hashtable的区别
1、 继承和实现区别 Hashtable是基于陈旧的Dictionary类,完成了Map接口;HashMap是Java 1.2引进的Map接口的一个实现(HashMap继承于AbstractMap,AbstractMap完成了Map接口)。 2、 线程安全不同 HashTable的方法是同步的,HashMap是未同步,所以在多线程场合要手动同步HashMap。 3、 对nu原创 2012-12-25 18:26:19 · 504 阅读 · 0 评论 -
Java算法排序之--希尔排序法
希尔排序法(缩小增量法) 属于插入类排序,是将整个无序列分割成若干小的子序列分别进行插入排序的方法。排序过程举例先取一个正整数d1数组元素放一组,组内进行直接插入排序;然后取d2初始:d=549 38 65 97 76 13 27 49* 55 0449 13|-------------------|38 27|-------------------|6原创 2013-02-18 13:23:30 · 783 阅读 · 0 评论 -
Java算法排序之--简单排序、堆排序
简单选择排序(1)基本思想:在要排序的一组数中,选出最小的一个数与第一个位置的数交换;然后在剩下的数当中再找最小的与第二个位置的数交换,如此循环到倒数第二个数和最后一个数比较为止。(2)实例:(3)用java实现public class selectSort { public selectSort(){ int a[]原创 2013-02-19 10:02:56 · 532 阅读 · 0 评论 -
Java算法排序之--直接插入排序
排序之间的关系:直接插入排序(straight insertion sort)的作法是:每次从无序表中取出第一个元素,把它插入到有序表的合适位置,使有序表仍然有序。第一趟比较前两个数,然后把第二个数按大小插入到有序表中; 第二趟把第三个数据与前两个数从前向后扫描,把第三个数按大小插入到有序表中;依次进行下去,进行了(n-1)趟扫描以后就完成了整个排序过程。直接插入排序属原创 2013-02-18 11:57:11 · 667 阅读 · 0 评论 -
Java算法排序之--冒泡排序、快速排序
冒泡排序(1)基本思想:在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。(2)实例:(3)用java实现[plain] view plaincopypubli ccl原创 2013-02-19 10:25:52 · 635 阅读 · 0 评论 -
Java算法排序之--选择排序
每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。 选择排序是不稳定的排序方法。排序简介排序算法即解决以下问题的算法:输入:n个数的序列。输出:原序列的一个重排;,使得a1*排序算法有很多,包括插入排序,冒泡排序,堆排序,归并排序,选择排序,计数排序,基数排序,桶排序,快速排序等。插入排序,堆排序,选原创 2013-02-20 10:28:03 · 686 阅读 · 0 评论 -
java数据结构-HashMap
下面以HashMap为例子,深入对Map的实现机制进行了解,在这个过程中,请打开jdk源码。Hash算法HashMap使用Hash算法,所以在解剖HashMap之间,需要先简单的了解Hash算法,Hash算法一般也成为散列算法,通过散列算法将任意的值转化成固定的长度输出,该输出就是散列值,这是一种压缩映射,也就是,散列值的空间远远小于输入的值空间。简单的说,hash算法的意义在原创 2012-12-25 12:56:50 · 445 阅读 · 0 评论 -
Hash 算法
Hash,一般翻译做“散列”,也有直接音译为"哈希"的,就是把任意长度的输入(又叫做预映射, pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,而不可能从散列值来唯一的确定输入值。数学表述为:h = H(M) ,其中H( )--单向散列函数,M--任意长度明文,h--固原创 2013-02-22 10:13:49 · 728 阅读 · 0 评论