JackChan

生活不止眼前的苟且,还有诗和远方!

排序:
默认
按更新时间
按访问量
RSS订阅

数据结构与算法

GitBook 在线阅读,PDF、Mobi、ePub下载https://www.gitbook.com/book/alleniverson/data-structure-and-algorithms/detailsGitHub托管https://github.com/JackChan1999/Da...

2017-01-02 17:07:43

阅读数 1282

评论数 0

Java数据结构和算法:234树和外部存储

234树 有一个数据项的节点总是有两个子节点 有两个数据项的节点总是有三个子节点 有三个数据项的节点总是有四个子节点 多叉树,四叉树外部存储主存RAM,随机访问存储器,断电后数据会丢失磁盘文件存储器,访问速度慢一次访问一个数据块在磁盘上的数据按块存储,根据不同的系统成为块、页、分配单元、或其他的名...

2017-01-13 18:30:50

阅读数 708

评论数 0

Java数据结构和算法:哈希表

哈希表是一种数据结构,它可以提供快速的插入操作和查找操作。哈希表的缺点:基于数组,数组创建后难于扩展。不能有序遍历哈希化把关键字转换成数组下标(哈希函数)冲突(碰撞)开放地址法线性探测// hash.java // demonstrates hash table with linear probi...

2017-01-13 17:14:02

阅读数 438

评论数 0

Java数据结构和算法:二叉树

二叉树的实现数组查询快,增删慢;链表增删快,查询慢;二叉树查询和增删都有很好的性能package com.itheiam62;/** * @描述 中序遍历是有序的二叉树(不重复) * */ public class MyTree { private Node root; /...

2017-01-10 23:08:57

阅读数 301

评论数 0

LinkedList源码剖析

LinkedList简介LinkedList是基于双向循环链表(从源码中可以很容易看出)实现的,除了可以当作链表来操作外,它还可以当作栈,队列和双端队列来使用。LinkedList同样是非线程安全的,只在单线程下适合使用。LinkedList实现了Serializable接口,因此它支持序列化,能...

2017-01-08 00:11:35

阅读数 302

评论数 0

HashMap源码剖析

HashMap简介HashMap是基于哈希表实现的,每一个元素都是一个key-value对,其内部通过单链表解决冲突问题,容量不足(超过了阈值)时,同样会自动增长。HashMap是非线程安全的,只是用于单线程环境下,多线程环境下可以采用concurrent并发包下的concurrentHashMa...

2017-01-07 22:29:32

阅读数 352

评论数 0

LinkedHashMap源码剖析

LinkedHashMap简介LinkedHashMap是HashMap的子类,与HashMap有着同样的存储结构,但它加入了一个双向链表的头结点,将所有put到LinkedHashmap的节点一一串成了一个双向循环链表,因此它保留了节点插入的顺序,可以使节点的输出顺序与输入顺序相同。Linked...

2017-01-07 22:25:40

阅读数 323

评论数 0

Java数据结构和算法:HashMap,哈希表,哈希函数

1. HashMap概述HashMap是基于哈希表的Map接口的非同步实现(Hashtable跟HashMap很像,唯一的区别是Hashtalbe中的方法是线程安全的,也就是同步的)。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变...

2017-01-07 19:34:16

阅读数 2835

评论数 0

十大编程算法助程序员走上大神路

概述:编程算法,是完成程序逻辑的主要途径。本文推荐十大编程算法,有利于程序员的编程逻辑。算法一:快速排序算法快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序 n 个项目要Ο(n log n)次比较。在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见。事实上,快速排序通常明显比其他...

2017-01-05 14:25:45

阅读数 326

评论数 0

15道使用频率极高的基础算法题

1、合并排序,将两个已经排序的数组合并成一个数组,其中一个数组能容下两个数组的所有元素; 2、合并两个已经排序的单链表; 3、倒序打印一个单链表; 4、给定一个单链表的头指针和一个指定节点的指针,在O(1)时间删除该节点; 5、找到链表倒数第K个节点; 6、反转单链表; 7、通过两个...

2017-01-05 14:19:58

阅读数 328

评论数 0

数据结构和算法:全面的算法代码库

原文链接:https://github.com/Dev-XYS/AlgorithmsAlgorithms本次README修订为算法仓库Algorithms的第100次commit,首先我们庆祝自2016年8月4日本仓库建立以来Dev-XYS在算法学习方面取得的显著进步!这里有各种算法的C++代码,...

2017-01-05 14:15:48

阅读数 1946

评论数 0

Java数据结构和算法:HashMap的实现原理

HashMap源码理解 Java集合之HashMap HashMap原理及实现学习总结 HashMap源码分析 HashMap原理及实现学习总结 HashMap概述HashMap是基于哈希表的Map接口的非同步实现。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的...

2017-01-05 08:31:57

阅读数 2105

评论数 0

数据结构与算法:查找

所谓查找(Search)又称检索,就是在一个数据元素集合中寻找满足某种条件的数据元素。查找在计算机数据处理中是经常使用的操作。查找算法的效率高低直接关系到应用系统的性能。查找的方法很多,本章将介绍一些常用的查找算法,主要有:线性表的查找、树表的查找和散列表的查找,并对有关的算法进行性能分析和对比基...

2017-01-04 20:45:04

阅读数 3981

评论数 0

数据结构和算法:图

图(Graph)是一种较树更为复杂的非线性数据结构。在树形结构中,数据元素之间的关系是层次型的,树中除叶子以外的每一个数据元素可以和它下一层的多个数据元素存在关系;但除根元素以外的每一个数据元素只能且必须和它上一层中的一个数据元素存在关系。而在图形结构中,数据元素之间的关系是任意的,图中每一个数据...

2017-01-04 18:38:45

阅读数 1093

评论数 0

Java数据结构与算法:堆

堆的定义设有n个数据元素的关键字为(k0、k1、…、kn-1),如果它们满足以下的关系:ki<= k2i+1且ki<= k2i+2(或ki>= k2i+1且ki>= k2i+2)(i=0、1、…、(n-2)/2)则称之为堆(Heap)。如果将此数据元素序列用一维数组存储...

2017-01-04 18:15:39

阅读数 1332

评论数 0

Java数据结构和算法:字符串、数组和广义表

数组和广义表是与前述的线性表有所区别的数据结构。它们可以看成是线性表在下述含义上的扩展:线性表中的元素本身也是一个数据结构字符串字符串的定义、存储结构字符串(string)是由n (n≥0) 个字符组成的有限序列。字符串简称为串,一般记为: s = “a0 a1 … an-1” 其中s是串...

2017-01-04 17:48:36

阅读数 609

评论数 0

Java数据结构和算法:线性表

线性表的定义线性表(linear-list)是最常用最简单的一种数据结构。一个线性表是n (n≥0)个相同类型数据元素的有限序列。记为: L= (a1, a2 , … , an )。其中,L是表名,a1是第一个数据元素(也简称为首元素),无前驱,只有一个后继;an是最后一个数据元素(即第n个数据元...

2017-01-04 16:17:31

阅读数 648

评论数 0

计算机常用基础算法

Algorithms playground for common questions solved in Java syntax.This repository contains my solution for some common algorithms. I’ve created this r...

2017-01-04 15:42:51

阅读数 499

评论数 0

Java数据结构和算法:图

图的基本概念1. 图的定义定义:图(graph)是由一些点(vertex)和这些点之间的连线(edge)所组成的;其中,点通常被成为”顶点(vertex)”,而点与点之间的连线则被成为”边或弧”(edege)。通常记为,G=(V,E)。2. 图的种类根据边是否有方向,将图可以划分为:无向图和有向图...

2017-01-04 15:38:16

阅读数 953

评论数 0

Java数据结构和算法:哈夫曼树

本章介绍哈夫曼树。和以往一样,本文会先对哈夫曼树的理论知识进行简单介绍,然后给出C语言的实现。后续再分别给出C++和Java版本的实现;实现的语言虽不同,但是原理如出一辙,选择其中之一进行了解即可。若文章有错误或不足的地方,请帮忙指出!哈夫曼树的介绍在一棵二叉树中由根结点到某个结点所经过的分支序列...

2017-01-04 15:18:57

阅读数 1578

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭