第六章、树和二叉树 6.1、树 ❗6.1.1、树的定义 1、定义 1、树是n个节点的有限集,显然,树的定义是一个递归的定义 2、如果n=0则称为空树 3、如果n>0则满足以下两个条件 4、有且仅有一个特定的称为根的节点 5、其余节点可分为m(m>=0)个互不相交的有限集,其中每一个集本身又是一棵树,称为根的子树 。 2、树的其他表示方式…
第五章、串、数组和广义表 5.1、串(也叫字符串) 5.5.1、串的定义—几个术语 1、定义 2、子串:一个串中任意个连续字符组成的子序列(含空串)称为该串的子串 3、真子串:是指不包含自身的所有子串 4、主串:包含子串的串 5、字符位置:字符在序列中的序号为该字符在串中的位置 6、子串位置:子串第一个字符在主串中的位置 7、空格串:由一个或多个空…
第四章、栈和队列、堆 4.1、栈和队列的定义和特点 1、栈和队列是两种常用的、重要的数据结构 2、栈和队列是限定插入和删除只能在表的“端点”进行的线性表 3、栈和队列是线性表的子集合(是插入和删除位置受限的线性表) 4.1.1、栈(stack)定义和特点 1、栈:特殊的线性表,是限定仅在一端(通常是表尾)进行插入和删除操作的线性表 2、又称为后进先…
第三章、线性表 3.1、线性表的定义 1、线性表(List):零个或多个数据元素的有限序列。 2、线性表, (1)第一个元素a1,只有一个直接后继,没有直接前驱 (2)最后一个元素an,只有一个直接前驱,没有直接后继 (3)其他a1-an的数据中,都只有一个直接前驱和后继,有多个间接前驱和间接后继 (4)空表:线性表元素的个数n(n>=0)定…
第一章、数据结构绪论 1、4基本概念和术语 数据 1、数据:是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识 别,并输入给计算机处理的符号集合 (1)eg:网页、视频、音乐等 数据元素 1、数据元素:是组成数据的、有一定意义的基本单位,在计算机中通常作为整体处 理。 也被称为记录 (1)eg:哈 , 牛、马、羊、鸡、猪、 狗等动物当然…
正则表达式 1、作用:处理文本 1、用途:文本查找,筛选 2、正则表达式的基本介绍 1、用某种模式去匹配字符串的一个公式。 2、正则表达式不止java有 3、正则表达式底层实现 1、理解 2、group源码 public String group(int group) { if (first < 0) throw new IllegalSta…
第二十三章、反射 补充动态语言和静态语言区别 1、反射机制 1.1java反射机制示意图 1.2、Java反射机制可以完成 1、在运行时判断任意一个对象所属的类 2、在运行时构造(创建)任意一个类的对象 3、在运行时得到任意一个类所具有的成员变量和方法 4、在运行时调用任意一个对象的成员变量和方法 5、生成动态代理 1.2、java反射的优缺点 1…
第二十一章、网络编程 1、网络的相关概念 1.1、网络通信 1、概念:两台设备之间通过网络实现数据传输 2、网络概念:将数据通过网络从一台设备传输到另一台设备。 3、java.net包下提供了一系列的列或接口,供程序员使用,完成网络通信 1.2、网络 1、概念:两台或多台设备通过一定物理设备链接起来构成了网络 2、根据网络的覆盖范围不同,对网络机芯…
第十九章、IO流 1、文件 1.1、文件就是保存数据的地方 1.2、文件流(以程序为中心) 1、文件在程序中是以流的形式来操作的 2、输入流:文件到程序的内存的路径 3、输出流:程序的内存到文件的路径 2、常用的文件操作 2.1、创建文件对象相关构造器和方法 1、new File(String pathname) //根据路径创建一个File对象 …
第十七章、多线程基础 1、程序(programm) 1.1、概念: 完成特定的任务、用某种语言编写的一组指令的集合。一段静态代码。 2、进程 1、进程是指运行中的程序,比如qq使用,就是一个进程,迅雷又是一个进程。就会为其分配内存空间 2、进程是查询的一次执行过程,或是正在运行的一个程序。动态过程:有它自身的产生,存在和消亡的过程。 3、线程相关概…