Skye-ye's Blog

二叉树的构建与遍历

问题描述 假设二叉树中的每个结点值为单个整数,采用二叉链结构存储,假定每颗二叉树不超过2000个节点。设计算法完成 按从左到右的顺序输出二叉树的叶子结点 按从右到左的顺序输出二叉树的叶子结点 输出二叉树所有的节点,按照从根节点开始,逐层输出,同一层按照从右向左的顺序 输入形式 每个测试是一颗二叉树的括号表示法字符串 输出形式 第一行是按从左到右的...

AcWing1111 - 字母

题设 给定一个 R×S 的大写字母矩阵,你的起始位置位于左上角,你可以向上下左右四个方向进行移动,但是不能移出边界,或者移动到曾经经过的字母(左上角字母看作第一个经过的字母)。 请问,你最多可以经过几个字母。 输入格式 第一行包含两个整数 R 和 S,表示字母矩阵的行和列。 接下来 R 行,每行包含一个长度为 S 的大写字母构成的字符串,共同构成字母矩阵。 输出格式 输出一个整...

AcWing1114 - 棋盘问题

题设 在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。 要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放 k个棋子的所有可行的摆放方案数目 C。 输入格式 输入含有多组测试数据。 每组数据的第一行是两个正整数 n,k,用一个空格隔开,表示了将在一个 n∗n 的矩阵内描述棋盘,以及摆放棋子的数目。当为-1 -1时...

数据结构

链表 0. 实现方式 在算法竞赛中,链表通常不以结构体的形式实现,原因在于建新节点的时间太长。链表通常以数组的形式实现。 1. 单链表 实现一个单链表,链表初始为空,支持三种操作: 向链表头插入一个数; 删除第 k 个插入的数后面的一个数; 在第 k 个插入的数后插入一个数。 现在要对该链表进行 M 次操作,进行完所有操作后,从头到尾输出整个链表。 注意:题目中...