摘要:
数组,在内存上给出了连续的空间.链表,内存地址上可以是不连续的,每个链表的节点包括原来的内存和下一个节点的信息(单向的一个,双向链表的话,会有两个). 数组优于链表的: 1.内存空间占用的少,因为链表节点会附加上一块或两块下一个节点的信息.但是数组在建立时就固定了.所以也有可能会因为建立的数组过大或 阅读全文
摘要:
String ★1.它在java.lang包中。String类是被final修饰的,意味着String类不能被继承。并且它的成员方法都是默认为final方法。 2.早期的JVM实现版中,被final修饰的方法会被转为内嵌调用以提升执行效率。而从Java SE5/6开始,就需要考虑用final去提升方 阅读全文
摘要:
浅拷贝:只拷贝对象本身(包括对象中的基本变量),而不拷贝对象包含的引用指向的对象。 或者说,被复制对象的所有变量都含有与原来的对象相同的值,对象的引用对象会在原来的对象和它的副本之间共享。 调用clone()得到的对象。 深拷贝:不仅拷贝对象本身,而且拷贝对象包含引用指向的所有对象。 简而言之,深拷 阅读全文
摘要:
查找树是一种数据结构,支持多种动态集合操作,包括构造,查找,插入,删除,寻找最小值和最大值等。二叉查找树按照二叉树结构组织,通常采用链表表示。 1.每一个节点表示一个对象,节点包括data数据部分,指针(left,right指针)。 2.若某节点的儿子节点不存在,则相应的儿子结点为空。 特点: 1. 阅读全文
摘要:
二叉树的遍历 1.以某种次序访问所有节点,且每个节点恰好只访问一次 2.遍历方式:先序遍历、中序遍历、后序遍历。它们是针对根节点的访问顺序决定的 3.遍历二叉树均指二叉树不为空的情况。 1.先序遍历:根节点 --> 左子树 --> 右子树2.中序遍历:左子树 --> 根节点 --> 右子树3.后序遍 阅读全文
摘要:
树 特点: 1.由n个节点组成的有限集合。每个节点的前驱节点和后继节点都可能不止一个。 2.非空的树有且只有一个根节点。 3.除根节点外,其余节点可分为若干个互不相交的子集。每个子集本身又构成一棵树,称为根的子树。 4.一个节点拥有的子树的数量称为该节点的度。所有节点的最大度数称为树的度。节点总数 阅读全文
摘要:
定义:在定义自身的过程中又直接或间接调用自身的一种算法。组成元素: 1.递归调用 2.递归终止条件 适用范围: 1.一个问题可被分解为若干层简单的子问题 2.子问题与其上一层问题解决方法一致 3.外层问题的解决依赖子问题的解决 范例:Fibonacci数列1.Fibonacci类 2.测试类 范例: 阅读全文
摘要:
定义:也称队,一端插入,另一端删除的运算受限的线性表。遵循FIFO(First In First Out)先进先出。 一种特殊的线性表,在存储结构上分,顺序存储和链式存储,只是在操作上与普通线性表不一样。队头(front)指针:删除数据端队尾(rear)指针:插入数据端顺序队列:队列的顺序存储结构 阅读全文
摘要:
定义:也称堆栈,一种限制只能在一端进行插入和删除操作的线性表。遵循LIFO(Last In First Out)后进先出 一种特殊的线性表,它在存储结构上分顺序存储和链式存储,只是在操作上与普通线性表不一样。 栈顶:(插入和删除数据端)存储在栈顶位置的数据元素称栈顶元素栈底:存储在栈底位置的数据元素 阅读全文
摘要:
数据结构:计算机存储、组织数据的方式,它用来反映一个数据的内部构成。数据:信息的载体,是能够被计算机识别、存储、计算(处理)的符号集合,是计算机处理对象的总称。 数据含义在计算机语言中,十分广泛,除了通常使用的数字、字符串以外,任何能输入到并能被计算机处理的符号都可称为数据。 例如,声音,图片等。数 阅读全文