数据结构与算法
Haiyoung
seeing much, suffering much and studying much.
展开
-
二叉树的创建及遍历
在计算机科学中,二叉树是每个节点最多有两个子树的树结构。通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)。二叉树常被用于实现二叉查找树和二叉堆。二叉树的每个结点至多只有二棵子树(不存在度大于2的结点),二叉树的子树有左右之分,次序不能颠倒。二叉树的第i层至多有2^{i-1}个结点;深度为k的二叉树至多有2^k-1个结点;对任何一棵二叉树T,如果原创 2015-11-21 22:38:01 · 808 阅读 · 0 评论 -
简单插入排序与希尔排序
插入排序由N-1趟排序组成,对于p=1到N-1趟排序,插入排序保证从位置0到位置p上的元素为已排序状态。时间复杂度为O(N2), 通过交换相邻元素进行排序的任何算法平均都需要O(N2)时间。import java.util.Arrays;public class insertionSort { public static int[] insertSort(int[] intArr) {原创 2016-09-16 16:27:45 · 385 阅读 · 0 评论 -
冒泡排序, 简单选择排序, 插入排序, 希尔排序, 快速排序 js 实现
代码分为两个js文件;一个排序核心代码 sort.js,一个入口main.js;代码在Node.js环境下执行sort.js//冒泡排序exports.bubbleSort = function (array){ var i,j,temp; for(i=0;i<array.length-1;i++){ for(j=0;j<array.length-i-1;j++){ if(ar原创 2016-10-06 17:38:08 · 663 阅读 · 0 评论 -
JDK1.8 使用平衡树处理HashMap的高频hash冲突问题
Handle Frequent HashMap Collisions withBalanced Trees使用平衡树处理HashMap的高频hash冲突问题SummaryImprove the performanceof java.util.HashMap under high hash-collision conditions by usingbalanced trees rathe翻译 2016-10-08 19:20:40 · 2295 阅读 · 2 评论