算法
百里挑一
这个作者很懒,什么都没留下…
展开
-
常见 Hash 算法的原理
散列表,它是基于高速存取的角度设计的,也是一种典型的“空间换时间”的做法。顾名思义,该数据结构能够理解为一个线性表,可是当中的元素不是紧密排列的,而是可能存在空隙。散列表(Hash table,也叫哈希表),是依据关键码值(Key value)而直接进行訪问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来訪问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列原创 2016-11-14 10:43:43 · 397 阅读 · 0 评论 -
算法总结
package sort;/** * 排序算法实现 * @author tangxing * */public class Sort { /** * 冒泡排序 * @param a */ public static void bubbleSort(int[] a){ for(int i=0;i<a.length-1;i++){ for(int j=0;j<原创 2016-12-21 16:58:17 · 355 阅读 · 0 评论 -
java二叉树实现及遍历
1、构建二叉树public class BinaryTree { int data; //根节点数据 BinaryTree left; //左子树 BinaryTree right; //右子树 public BinaryTree(int data) //实例化二叉树类 { this.data = data; left = null; r原创 2016-12-22 17:04:49 · 275 阅读 · 0 评论 -
排序算法性能比较
所谓排序,即将原来无序的一个序列重新排列成有序的序列。排序方法中涉及到稳定性,所谓稳定性,是指待排序的序列中有两个或两个以上相同的项,在排序前和排序后看这些相同项的相对位置有没有发生变化,如果没有发生变化,即该排序方法是稳定的,如果发生变化,则说明该排序方法是不稳定的。如果记录中关键字不能重复,则排序结果是唯一的,那么选择的排序方法稳定与否就无关紧要了;如果关键字可以重复,则在选择原创 2016-12-23 10:48:03 · 348 阅读 · 0 评论 -
排序算法总结
前言 查找和排序算法是算法的入门知识,其经典思想可以用于很多算法当中。因为其实现代码较短,应用较常见。所以在面试中经常会问到排序算法及其相关的问题。但万变不离其宗,只要熟悉了思想,灵活运用也不是难事。一般在面试中最常考的是快速排序和归并排序,并且经常有面试官要求现场写出这两种排序的代码。对这两种排序的代码一定要信手拈来才行。还有插入排序、冒泡排序、堆排序、基数排序、桶排序等。面试官对于这原创 2016-12-23 10:50:59 · 285 阅读 · 0 评论 -
各种算法
public static String reverse(String str){ if(str == null || str.length() <= 1){ return str; } return reverse(str.substring(1))+str.charAt(0); } /** * 按照指定字节长度原创 2017-01-12 10:46:27 · 257 阅读 · 0 评论