随笔分类 -  数据结构和算法

数据结构和算法
数据结构和算法绪论笔记整理
摘要:程序设计 = 数据结构 + 算法数据结构:就是数据元素相互之间存在的一种或多种特定关系的集合(关系就是讲逻辑结构,集合就是将物理结构); a.逻辑结构 集合:数据元素之间只有"同属于一个集合"的关系 线性结构:数据元素之间存在一个对一个的关系 树形结构:数据元素之间存在一个对多个关系 ... 阅读全文

posted @ 2014-08-26 23:27 lovebeauty 阅读(307) 评论(0) 推荐(0) 编辑

linearlist和linkedlist的区别 待整理
摘要:线性表在内存中是一块连续的存储空间;如:一个表中的内容是:【1,2,3】则它在内存中可能是如下存储的:1 2 3优点:查找 通过这个结构可以看出,只要知道了第一个元素在内存中所在的位置。就可以很容易的知道其他元素的位置。因为每一个元素占的空间是一样的。所以,如果我们知道第一个元素:1在内存号:1000;而每一个元素占8个内存空间; 则第二个元素:2所在的内存空间为:1000 + 8; 依此类推。总结:在线性表中访问数据元素是很快的。缺点:添加、删除它的缺点也正因为它是连续的一块内存空间。所以,如果往中间添加或在中间删除一个元素。都要移动其他的元素。如:我在最前面加入一个元素:0.则 1,2,3 阅读全文

posted @ 2013-11-26 18:45 lovebeauty 阅读(688) 评论(0) 推荐(0) 编辑

java_linear list
摘要:1.线性表的顺序存储结构,类似ArrayListpackage collectionsFramework.linearlist;import java.util.Arrays;/** * @Package collectionsFramework.linearlist * @ClassName: Singlylinkedlist * @Description: TODO(arrayList的增删改查) * @author andy * @date 2013-11-21 下午05:39:53 */public class SinglyLinkedList{ private Object[... 阅读全文

posted @ 2013-11-25 23:40 lovebeauty 阅读(486) 评论(0) 推荐(0) 编辑

java_queue
摘要:队列是一种特殊的线性表,先进先出(first in first out)FIFO,它只允许在表的前端(front)进行删除操作,只允许在表的后端(rear)进行插入操作。实际应用:排队等待公交车,银行或者超市里的等待列队出现假溢出的时候的一般解决方法:一是将队列元素向前平移,对应的队列的顺序存储结构及实现中的a实现二循环队列,对应的循环队列实现1.队列的顺序存储结构及实现a.没有控制队列容量大小的普通队列,数组移位实现(无假溢出现象)package collectionsFramework.queue;/** * @Package collectionsFramework.queue * @. 阅读全文

posted @ 2013-11-23 19:45 lovebeauty 阅读(304) 评论(0) 推荐(0) 编辑

java_stack
摘要:栈是一种数据结构,它代表只能在某一端进行插入、删除操作的特殊线性表。栈的最大特点是是后进先出(First In Last Out),对栈的操作主要是入栈和出栈,判断栈是否为空,计算栈的大小。对栈而言,允许插入删除的一端是栈顶,另一端则称为栈底。实际应用:表达式求值和语法解析,校验和解析XML,文本编辑器里的撤销动作,浏览器里的浏览记录栈的顺序存储实现:(基于数组实现)package collectionsFramework.stack;/** * @Package collectionsFramework.stack * @ClassName: SequenceStack * @Descri. 阅读全文

posted @ 2013-11-22 17:58 lovebeauty 阅读(984) 评论(0) 推荐(1) 编辑

数据结构简介
摘要:这是一门很深的学问,我们先从整理把握一下数据结构:是由相互之间存在着一种或多种关系的数据元素的集合和该集合中数据元素之间的关系组成。具体指同一类数据元素中,各元素之间的相互关系,包括三个组成成分,数据的逻辑结构,数据的存储结构和数据运算结构。1.逻辑结构:指数据元素之间的逻辑关系,分两种,线性结构和... 阅读全文

posted @ 2013-11-21 22:17 lovebeauty 阅读(644) 评论(0) 推荐(0) 编辑

HashMap总结
摘要:一、基础知识准备: 1.散列函数即哈希函数:一般的线性表,树中,记录在结构中的相对位置是随机的,即元素位置和记录的关键字之间不存在确定的关系,因此,在结构中查找记录时需进行一系列和关键字的比较。这一类查找方法建立在“比较“的基础上,查找的效率依赖于查找过程中所进行的比较次数。 理想的情况是能直接找到需要的记录,因此必须在记录的存储位置和它的关键字之间建立一个确定的对应关系f,使每个关键字和结构中一个唯一的存储位置相对 应,这种关系就是就是数学上的散列函数,说白了哈希函数就是一种数学关系式。 2.散列表(Hash table,也叫哈希表),是根据(Key value)而直接进行访问的数据结构。也 阅读全文

posted @ 2013-11-19 23:55 lovebeauty 阅读(337) 评论(0) 推荐(0) 编辑

java - 简单排序
摘要:冒泡排序View Code 1 package testSort; 2 /** 3 * 10-7 冒泡排序 4 * 五个数,每轮选出一个最大的数,一轮选一个数,四轮之后,还有一个数就是最小的不需要选了,需要四轮,即array.length-1 5 * 第一轮有五个数,需要比较四次 6 * 第二轮有四个数,需要比较三次 7 * 第三轮有三个数,需要比较两次 8 * 第四轮有两个数,需要比较一次 9 * 外层变量控制比较轮数,内层控制比较次数,例如5个数的数组,比较5轮,第一轮比较4次,第二轮比较3次。。。10 * @author Administrator11 *12 */... 阅读全文

posted @ 2012-04-29 17:03 lovebeauty 阅读(230) 评论(0) 推荐(0) 编辑

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示