01 2024 档案
摘要:题源 以下题面由GPT3.5翻译并生成题解 题目描述 给定一个电话号码列表,判断是否一致,即没有一个号码是另一个号码的前缀。比如电话目录列出了以下号码: 紧急电话 911爱丽丝 97 625 999鲍勃 91 12 54 26 在这种情况下,无法拨打鲍勃的电话,因为只要你拨打了鲍勃电话号码的前三位数
阅读全文
摘要:迭代法 int zuhe(int m, int n) { if (n < 0 || n > m) return 0; int sum = 1; for (int i = 1; i <= n; i++) {// 计算 C(m, n) = m! / (n! * (m-n)!) sum *= m - n
阅读全文
摘要:描述 圣诞节就要到了,同学们在做游戏获得圣诞礼物。同学们排成一队。首先,前两名同学玩游戏,然后失败者走到队尾,胜者将和下个同学比赛,直到有同学连续赢得n场比赛,则这个同学成为赢家,将获得圣诞礼物。 对于每个参与的同学,我们都知道其能量,在一场比赛中,能量强大的同学获胜,如果能量相同,后来者获胜,确定
阅读全文
摘要:迭代法 int pailie(int m,int n){ int sum=1; for(int i=m-n+1;i<=m;i++){ sum*=i; } return sum; } 递归法 方法1:递推关系式: A m n = A m 1 A m − 1 n − 1 A_m^n=A_{m}^{1}A
阅读全文
摘要:阶乘 特别地, 0 ! = 1 0!=1 0!=1(基本情况) 递归法 int jiecheng(int x){ if(x==0) return 1; else return x*jiecheng(x-1); } 迭代法 int jiecheng(int x){ int sum=1; for(int
阅读全文
摘要:斐波那契(fibonacci)数列 upd:2024-7-12 修复2处代码bug 递归法 O ( 2 n ) O(2^n) O(2n) int fib(int x){ if(x==0) return 0; else if(x==1||x==2) return 1; else return fib(
阅读全文
摘要:二叉树 存储结构 二叉树存储结构有静态存储(数组)和链接存储(二叉链表)方式,竞赛中一般直接采用静态存储结构。 在静态存储结构中,设left和right域存储其孩子结点下标,根节点下标一般从1开始。 对于一棵二叉树,若某节点下标为 i i i,则其父节点下标为 ⌊ i / 2 ⌋ \lfloor i
阅读全文
摘要:队列 队列:先进先出的线性表 顺序队列 队列有队头的front指针和队尾的rear指针。顺序队列的出队是通过移动first指针进行操作的“假删除”。 普通顺序队列 //顺序普通队列板子 #define MAX 10 typedef struct{ int data[MAX]; int front;
阅读全文
摘要:顺序栈 特点:栈单向延展。 此处为仅有栈顶指针版,也可同时设栈顶指针+栈底指针进行表示。 顺序栈的出栈操作是通过移动栈顶指针的“假删除”。 实现 #define N 10 typedef struct{ int data[N]; int top; }stack; void chushihua(sta
阅读全文