数据结构与算法
Ronchan.
跌倒又爬起,山岭静悄悄
展开
-
算法笔记-动态规划求解最长公共子序列
什么是子序列呢?对于任意序列中的子集成为该序列的子序列。求解过程使用动态规划算法打表。先构建一个这样的表格:然后使用双重循环对比每一个值,如果两个值相同的填写当前对角线上一个的单元格的值+1,也就是该单元格下表[行-1][列-1]的值+1。如果两个值不相同则取该单元格正上方和整左方单元格最大的那一个。递归公式:打表完成后的表格:代码模板:#include<bits/stdc++.h>using namespace std;#define MAX原创 2022-03-30 16:42:07 · 924 阅读 · 0 评论 -
算法笔记-欧几里得算法
欧几里得算法也叫辗转相除法,常用来求解两个数最大公约数欧几里得算法的原理是 GCD递归定理GCD递归定理:对任意 非负整数 a 和 任意 整数 b,gcd(a,b) = gcd(b, a mod b)递归代码int gcd(int a, int b) { return (b==0) ? a : gcd(b, a % b);例子:...原创 2022-03-30 16:02:32 · 157 阅读 · 0 评论 -
基于C语言的数据结构课程设计(学生管理系统、停车场管理、家谱管理、校园导航系统)
大学C语言、数据结构小学期课程设计源码原创 2022-01-18 15:10:23 · 10056 阅读 · 8 评论