
数据结构
文章平均质量分 72
SerenoShen
不断提升自己!加油!加油!!
展开
-
排序算法--插入排序(直接插入排序、折半插入、shell排序)的java实现
插入排序是很多排序算法的一个总称,这里主要学习一下直接插入排序、折半插入排序和shell排序 约定:文中提到的序列代表要排序的数据项的线性集合(如数组等),记录代表序列中的一个数据项(如数组中的一个元素)(一)直接插入排序(Straight Insertion Sort)是一种非常简单的排序方法,它的基本操作是将一个记录插入到已排好序的有序表中。 算法的基本思想和自然语言描述: **首原创 2015-03-11 11:22:52 · 869 阅读 · 0 评论 -
Java实现冒泡排序以及优化冒泡排序的一些小技巧
约定声明: 为了更加简洁明了的说明算法的思想而不是仅仅局限于算法实现,本文假定:1、 要排序的数据都是整数2、 数据存储在数组中(正文中成为序列)3、 排序后的数据以升序排列 备注:本文为我个人学习后总结的一些学习笔记,难免有错误或是不足之处,还望大家见谅! 一:冒泡排序 对于含有N个元素的序列,冒泡排序在最坏情况下需要N-1次遍原创 2014-10-02 14:14:50 · 1090 阅读 · 0 评论 -
Java实现堆以及堆排序
堆排序堆排序使用的是二叉堆,它是一棵完全二叉树。堆有大顶堆和小顶堆之分。堆的一些性质:① :它是一颗完全二叉树。② :每个节点大于(小于)或等于它的任意一个孩子。表示堆的二叉树中,除了最底层外,该树是完全充满的,而且是从左至右填充的。如果堆的大小是提前可知道的,那么可以将堆存储在一个ArrayList或是一个数组中。(ArrayList底层实现也是一个数组啦!)存储在数原创 2014-10-03 22:58:33 · 791 阅读 · 0 评论 -
JavaScript中模拟实现Java的集合类Map的常用方
JavaScript中模拟实现Java的集合类Map的常用方法(function Map(){var size = 0, map = {},strundefined;function MapCache() {}MapCache.prototype.put = function (key, value){if ( key === null ||原创 2015-08-04 10:00:20 · 799 阅读 · 0 评论