数据结构与算法
SemiraChen
这个作者很懒,什么都没留下…
展开
-
数据结构与算法——冒泡和选择排序
数据结构研究数据之间的关系 逻辑结构 1.集合结构 2.线性结构 3.图形结构 4.树形结构 存储结构 1.表 2.堆栈 3.队列 4.数组 5.树 6.二叉树 7.图 算法 一个算法的优劣程度可以用空间复杂度和时间复杂度来衡量。 空间复杂度:是一个算法在运行过程中临时占用存储空间大小的度量 时间复杂度:是一个算法在运行过程中所需要计算的工作量 时间复杂度是将输入值趋近无穷的情况 比如: pub...原创 2019-01-19 17:48:58 · 207 阅读 · 0 评论 -
数据结构与算法——递归的简单应用
递归 一个简单的递归 public void recursion(int n) { System.out.print(n); if (n < 0) { return; } else { recursion (n - 1); System.out.print(n); } } 输入3 输出 3 2 1 0 -1 0...原创 2019-02-14 15:57:57 · 210 阅读 · 0 评论 -
数据结构与算法——链表
链表 单链表 Message,MessageQueue 单循环链表 双链表 双向循环链表 LinkedList 优点:插入删除快 缺点:不支持随机访问 ##MessageQueue 插入:enqueueMessage(),按照时间顺序插入 删除:next() 整理麻将牌 Mahjong.Class /** * @author CSY * Created by CSY on 2019/1/28...原创 2019-01-29 09:46:23 · 172 阅读 · 0 评论 -
数据结构与算法——手写简单的linkedList
手写简单的linkedList linkedList是双向链表的应用。 优点:易插入删除 缺点:查找慢 简单的linkedList包含添加、查找、删除。 package com.example.csy.activitypractice; /** * @author CSY * Created by CSY on 2019/1/28. * 双向循环链表 */ public class LinkLi...原创 2019-02-12 09:10:31 · 277 阅读 · 0 评论 -
数据结构与算法——哈希表
哈希表(散列表) 根据关键值(key value)而直接进行访问的数据结构,通过把关键码值映射到表中某一位置来访问记录。 这个映射函数叫散列函数 存放记录的数组叫散列表 寻址容易,插入删除也容易 key:{14,19,5,7,21,1,13,0,18} 散列表:大小为13的数组a[13] 散列函数:f(x) =x mod 13 a[13] 0 1 2 3 4 5 6 7 8 9 10 11 12 ...原创 2019-02-26 10:22:23 · 170 阅读 · 0 评论 -
数据结构与算法——栈应用
栈是限定仅在表尾进行插入和删除操作的线性表 允许插入的一端叫栈顶,另一端叫栈底 特点:先进后出 栈的实现方式 顺序方式 栈顺序方式的实现是一个数组 stack继承vector。 vector类似于arraylist,是用数组实现的。区别在于vector使用了synchronized方法——线程安全,效率低于arraylist stack.java //入栈 public E push(E item...原创 2019-03-04 09:23:59 · 194 阅读 · 0 评论