概念 多对多 G = (V,E) 表示,V是定点,E是边 有向边:<$v_i$ , $v_j$>, ==$v_i$ 弧尾 $v_j$弧头== 有向图 <>无向边 () 无向图 邻接关系:若<$v_i$ , $v_j$>,则称$v_i$邻接到$v_j$,或$v_j$和$v_i$邻接 出度:射出的边入度
cjy's blog
1. 树定义:对一个节点而言,上层元素为直接前驱而且直接前驱唯一,下层元素为直接后继且直接后继可以有多个 根,子树 一个结点子树的根称为孩子节点,反之为父节点 父结点的父结点是祖父结点 根到某结点路径上所有结点(含根节点)都是祖先结点。反之都是祖先结点的子孙结点 同一父节点的结点互为兄弟结点 树中每个结点拥有孩子结点个数为结点的度,度为0是叶子结点,不为0是中间结点 树的度是每个结点度的最大值
1. 栈如何解决括号匹配问题? 所有左括号存入栈中,每来一个右括号,匹配成功则成对弹出,否则报错 特性:后进先出(Last In First Out, LIFO) 栈的首部为栈底,尾部为栈顶 插入删除均在栈顶进行,分别称为出栈(pop)和进栈(push) 此外还有取栈顶(top)和判断是否为空栈的操作 1.1 顺序栈:顺序存储的栈 bottom=0; 栈空标志:top=-1
1. 排序概念 通常待处理的数据不是单一的值,选择一个字段的值作为排序中比较的依据,该字段称为关键字 若待排序数字中有关键字值相同的元素,经过某种排序后相对先后位置在排序先后没有变化,称为稳定排序算法。若不能保证相对先后位置不变,称为不稳定排序 内排序:数据可放入声明的一组变量 外部排序:排序过程中要进行内外存之间的数据交换,只能分批从文件中读入至内存变量 ==无特殊说明,排序
1. 静态查找数据集合是固定的 1.1 顺序查找0下标设置为哨兵位,从n找到0,m=0表示查找不成功。 123456789101112131415# include <iostream>using namespace std;template<class KEY, class OTHER>struct SET{ KEY key; OTHER other;