数据结构与算法
SemiraChen
这个作者很懒,什么都没留下…
展开
-
数据结构与算法——冒泡和选择排序
数据结构研究数据之间的关系逻辑结构1.集合结构2.线性结构3.图形结构4.树形结构存储结构1.表2.堆栈3.队列4.数组5.树6.二叉树7.图算法一个算法的优劣程度可以用空间复杂度和时间复杂度来衡量。空间复杂度:是一个算法在运行过程中临时占用存储空间大小的度量时间复杂度:是一个算法在运行过程中所需要计算的工作量时间复杂度是将输入值趋近无穷的情况比如: pub...原创 2019-01-19 17:48:58 · 206 阅读 · 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
手写简单的linkedListlinkedList是双向链表的应用。优点:易插入删除缺点:查找慢简单的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 13a[13] 0 1 2 3 4 5 6 7 8 9 10 11 12...原创 2019-02-26 10:22:23 · 169 阅读 · 0 评论 -
数据结构与算法——栈应用
栈是限定仅在表尾进行插入和删除操作的线性表允许插入的一端叫栈顶,另一端叫栈底特点:先进后出栈的实现方式顺序方式栈顺序方式的实现是一个数组stack继承vector。vector类似于arraylist,是用数组实现的。区别在于vector使用了synchronized方法——线程安全,效率低于arrayliststack.java//入栈public E push(E item...原创 2019-03-04 09:23:59 · 192 阅读 · 0 评论