数据结构
懂什么
努力学习中
展开
-
《数据结构与算法》学习笔记4 存储对象的数组和大O表示法
Person.java:public class Person { private String lastname; private String firstname; private int age; public Person(String first,String last,int num){ lastname=last; firstname=first;原创 2016-08-17 23:54:16 · 258 阅读 · 0 评论 -
《数据结构与算法》学习笔记16 给链表添加迭代器
迭代器:遍历一个集合中的所有元素的组件,表现为具有相应方法的类import java.io.*;public class IteratorApp { public static void main(String[] args) throws IOException{ LinkList list=new LinkList(); ListIterator iter=list.g原创 2016-08-21 22:19:07 · 184 阅读 · 0 评论 -
《数据结构与算法》学习笔记17 递归_三角数字+阶乘
特征:1、调用自己2、调用自身解决更小的问题3、在足够简单的问题层次,不需要调用,可以直接返回结果//1+2+...+numimport java.io.*;public class triangleApp { static int num; public static void main(String[] args) throws IOException{ Sy原创 2016-08-21 23:46:46 · 271 阅读 · 0 评论 -
《数据结构与算法》学习笔记18 递归_变位字
import java.io.*;public class AnagramApp { static int size; static int count; static char[] ch=new char[100]; public static void main(String[] args) throws IOException{ Sy原创 2016-08-22 12:02:26 · 669 阅读 · 1 评论 -
《数据结构与算法》学习笔记19 递归_二分查找
public class Array { private long[] a; private int elems; public Array(int size){ a=new long[size]; elems=0; } public boolean find(long value){ int i=0; for(i=0;i<elems;i++){ i原创 2016-08-23 09:54:14 · 218 阅读 · 0 评论 -
《数据结构与算法》学习笔记20 递归_归并排序
//比简单排序效率高 大o表示法分别是:O(n^2)>O(n*logn),但是比较占用内存public class DArray { private long[] a; private int size; public DArray(int n){ a=new long[n]; size=0; } public void inse原创 2016-08-23 23:44:32 · 229 阅读 · 0 评论 -
《数据结构与算法》学习笔记21 递归_消除递归
//在计算1+2+3+...+n时,不使用递归的方法//相当麻烦又毫无用处,看半天不太懂,心累//利用栈实现三角数字相加public class Parames { public intn; //数值 public int returnAdd;//标志 public Parames(intnum,原创 2016-08-24 00:53:06 · 424 阅读 · 0 评论 -
数据结构学习笔记23 快速排序和基尔排序
待定原创 2016-09-15 15:02:49 · 560 阅读 · 0 评论 -
数据结构学习笔记24 二叉树
public class Node { public int id; public double data; public Node leftNode; public Node rightNode; public void displayNode(){ System.out.println("("+id+","+data+")"); } p原创 2016-09-15 15:03:44 · 232 阅读 · 0 评论 -
《数据结构与算法》学习笔记26 堆
用堆实现优先级队列,O(logn)1、完全二叉树。除了最后一层节点不需要是满的,其他的每一层从左到右都完全是满的2、常由数组实现。3、堆里的每一个节点都满足:父节点关键字大于所有的子节点。public class Node { private int data; public Node(int key){ data=key; }原创 2016-09-15 19:31:24 · 166 阅读 · 0 评论 -
《数据结构与算法》学习笔记22 递归_希尔排序
希尔排序(Shell Sort)是插入排序的一种。也称缩小增量排序,是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。希尔排序的增量为h=(h-1)/3。public class Arraysh { private long[] a; private int size; public Arraysh(int n){ a=new long[n];原创 2016-08-25 22:31:24 · 304 阅读 · 0 评论 -
《数据结构与算法》学习笔记27 堆排序
public class Node { private int data; public Node(int key){ data=key; } public int getKey(){ return data; } public void setKey(int id){ data原创 2016-09-18 21:52:20 · 194 阅读 · 0 评论 -
《数据结构与算法》学习笔记30 有向图的拓扑排序
(1)、找到一个没有后继的顶点(如果有一条边从A指向B,那么B是A的后继)。(2)、从图中删除这个顶点,在列表的前面插入顶点的标记。(3)、重复步骤1和2.直到所有的顶点都从图中删除。这时列表显示的顶点顺序就是拓扑排序的结果。原创 2016-09-21 15:44:38 · 243 阅读 · 0 评论 -
《数据结构与算法》学习笔记15 有序链表和双向链表
有序链表:public class Link { public long value; public Link next; public Link(long n){ value=n; } public void display(){ System.out.println(value); }}//把link[]中的link插入到有序链表中,原创 2016-08-21 18:19:21 · 195 阅读 · 0 评论 -
《数据结构与算法》学习笔记11 优先级队列
优先级队列的意思就是队列中的元素是有序的。public class QueuePri {// private int front;// private int rear; private long[] a; private int num; private int maxsize; public QueuePri(int max){ maxsize=max;原创 2016-08-19 23:44:19 · 199 阅读 · 0 评论 -
《数据结构与算法》学习笔记3 有序数组与二分查找
//import java.lang.math.*;public class OrdArray { private long[] a; private int size; public OrdArray(int value){ a=new long[value]; size=0; } public void insert(long value){ int原创 2016-08-17 23:09:02 · 205 阅读 · 0 评论 -
《数据结构与算法》学习笔记2 数组基础知识
HighArrayApp.java:public class HighArrayApp { public static void main(String[] args){ HighArray arr; arr=new HighArray(8); arr.insert(0, 12); arr.insert(1, 32); arr.insert(2, 45); arr.ins原创 2016-08-17 21:32:21 · 215 阅读 · 0 评论 -
《数据结构与算法》学习笔记1 java数据结构基本知识
1、在 java中,简单数据类型都是通过它的值来传递,即由方法创建一个新的变量,并将参数的值复制到新变量中。数组和对象等则是引用传递。2、在java中,可以用==判断基本数据类型是否相等,而在判断对象时,判断的是类的引用是否一致,即它们是否指向同一个对象。在java中,要判断两个对象是否含有相同的数据,使用equals()3、java中不能重载操作符4、java与c相比,属于强类型语言原创 2016-08-13 21:38:08 · 324 阅读 · 0 评论 -
《数据结构与算法》学习笔记5 冒泡排序
public class ArrayBubble { private long[] a; private int size; public ArrayBubble(int num){ a=new long[num]; size=0; } public void insert(long value){ a[size]=value; size++;原创 2016-08-19 08:56:54 · 252 阅读 · 0 评论 -
《数据结构与算法》学习笔记7 插入排序
public class ArrayIns { private long[] a; private int size; public ArrayIns(int num){ a=new long[num]; size=0; } public void insert(long value){ a[size]=value; size++; }原创 2016-08-19 13:21:42 · 212 阅读 · 0 评论 -
《数据结构与算法》学习笔记6 选择排序
public class ArraySel { private long[] a; private int size; public ArraySel(int num){ a=new long[num]; size=0; } public void insert(long value){ a[size]=value; size++; } public vo原创 2016-08-19 11:23:33 · 265 阅读 · 0 评论 -
《数据结构与算法》学习笔记10 栈及其应用
//栈的实现public class StackX { private long[] a; private int msize; private int top; public StackX(int max){ msize=max; a=new long[msize]; top=-1; } public void push(long value){原创 2016-08-19 18:47:50 · 212 阅读 · 0 评论 -
《数据结构与算法》学习笔记9 希尔排序、归并排序
待定原创 2016-08-19 17:25:39 · 220 阅读 · 0 评论 -
《数据结构与算法》学习笔记8 快速排序
待定原创 2016-08-19 13:28:41 · 205 阅读 · 0 评论 -
《数据结构与算法》学习笔记14 用链表实现抽象数据类型
任何一种类都是一种数据类型,当一个数据存储结构表示为一个类时,也就成为一种数据类型。抽象数据类型:不考虑细节的描述和实现。//用链表实现栈和队列//link节点实现public class Link { public long value; public Link next; public Link(long d){ value=d; } public原创 2016-08-21 13:25:48 · 691 阅读 · 0 评论 -
《数据结构与算法》学习笔记13 单链表和双端链表
//单链表public class Link { private double value; public int idata; public Link next; public Link(int id,double dd){ value=dd; idata=id; } public void displayLink(){ System.out原创 2016-08-21 12:04:03 · 269 阅读 · 0 评论 -
《数据结构与算法》学习笔记12 利用栈解析算数表达式
//程序有问题,不太懂public class StackX { private char[] a; private int msize; private int top; public StackX(int n){ a=new char[n]; msize=n; top=-1; } public void push(char value){原创 2016-08-20 11:43:15 · 363 阅读 · 0 评论 -
《数据结构与算法》学习笔记29 最小生成树
s原创 2016-09-21 15:48:59 · 236 阅读 · 0 评论