自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 收藏
  • 关注

原创 标量类型------Python基础

是关键字且NoneType类型的唯一实例。null类型,可做返回值函数参数等。比较运算、条件表达式运算。返回ture或false。可以与and、or合用。我不太懂,有待补充…datetime模板。

2023-07-07 15:02:23 125

原创 名片管理系统Web

sdau计算机专业需要的留言2019-2020学年第2学期《Web应用开发技术课程设计》报告起止时间:2019.6.22—2019.6.30实习地点:采用网络环境组队分工协作完成指导教师:专业班级:计算机科学与技术18级课程设计小组成员:班级: 学号: 姓名: 成绩:班级: 学号: 姓名: 成绩:班级: 学号: 姓名: 成绩:班级: 学号: 姓名: 成绩:

2021-01-13 16:20:34 766 2

原创 回溯算法(一点点)

解决回溯问题的方法:(1)针对所给问题,定义问题的解空间;(2)确定易于搜索的解空间结构;(3)以深度优先的方式搜索解空间;(4)回溯法搜遍整个解空间,最后得到最优解。N皇后问题#include<math.h> int n,m=1; int a[1024]={0}; int check(int a[],int n) { for(int i=1;i&lt...

2020-05-07 09:50:04 259

原创 贪心算法详细笔记(活动安排问题、背包问题)

1、贪心算法 (1)原理:在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的仅是在某种意义上的局部最优解。贪心算法不是对所有问题都能得到整体最优解,但对范围相当广泛的许多问题他能产生整体最优解或者是整体最优解的近似解。 (2)特性:贪心算法采用自顶向下,以迭代的方法做出相继的贪心选择,每做一次贪心选择就将所求问题简化为一个规模更小的子问题,通过每一...

2020-05-07 09:38:53 1491

原创 0-1背包问题——动态规划

问题描述:有n种物品和一个重量为W的背包,第i种物品的重量是w[i],价值是v[i]。求解将哪些物品装入背包可使这些物品的重量总和不超过背包重量,且物品总价值价值最大。假设n=5,W=17。求解步骤:1、刻画0-1背包最优解结构;如果有n个物品,用Xi表示第i个物品的状态。Xi 的值为0或1。0表示物品未进入背包,1表示物品进入背包。如果一个最优解中包含n,即Xn=1,那么其余X1,X2...

2020-05-07 09:28:21 1191

原创 最大字段和

问题描述给定n个整数(可能为负数)组成的序列a[1],a[2],a[3],…,a[n],求该序列如a[i]+a[i+1]+…+a[j]的子段和的最大值。当所给的整数均为负数时定义子段和为0,依此定义,所求的最优值为: Max{0,a[i]+a[i+1]+…+a[j]},1<=i<=j<=n例如,当(a[1],a[2],a[3],a[4],a[5],a[6])=(-2,11,-...

2020-05-07 09:22:39 162

原创 最长公共子序列——动态规划

问题例如:X={A,B,C,B,A,D,B},Y={B,C,B,A,A,C},那么,二者的最长公共子序列是{B,C,B,A},长度为4。我们首先需要搞清楚以下两个概念:最长公共子序列 VS 最长公共子串:找两个字符串的最长公共子串,这个子串要求在原字符串中是连续的。而最长公共子序列则并不要求连续。上述问题中的最长公共子序列与最长公共子串是一样的。但是再举例X={A,B,C,B,A,D,...

2020-05-06 09:21:54 492

原创 动态规划算法的基本要素

最优子结构当问题的最优解包含了其子问题的最优解时,称该问题具有最优子结构性质。问题的最优子结构性质提供了该问题可用动态规划算法求解的重要线索。在动态规划算法中,利用问题的最优子结构性质,以自底向上的方式递归地从子问题的最优解逐步构造出整个问题的最优解。重叠子问题可用动态规划算法求解的问题应具备的另一个基本要素是子问题的重叠性质。在用递归算法自顶向下求解问题时,每次产生的子问题并不总是新问题...

2020-05-06 09:01:35 2722

原创 矩阵连乘积问题——动态规划

分析问题首先我们了解一下什么是动态规划算法,动态规划算法与分治法类似,其基本思想也是将待求问题分解成若干个子问题。但是与分治法不同的是,适合于动态规划算法的问题经分解得到的子问题不是互相独立的。假若用分治法解决此类问题,由于子问题太多,导致最后求解需要耗费极大的指数时间。而动态规划算法就很好的解决了此类问题,为了避免大量运算和重复运算,我们可以采用一个表(可以为数组)来记录已经解决过的问题,倘若...

2020-05-06 08:53:48 1181

原创 整数因子分解

大于1的正整数 n 都可以分解为 n = x1 * x2 * … * xm, 每个xi为大于1的因子,即1<xi<=n 。例如:当n=12时,共有8种不同的分解式:12 = 1212 = 6212 = 4312 = 3412 = 32212 = 2612 = 23212 = 223对于给定正整数n,计算n共有多少种不同的分解式。此题因子讲顺序的.第一个因子可能是2...

2020-04-26 10:14:16 1541

原创 半数集问题解析

给定一个自然数n,由n开始可以依次产生半数集set(n)中的数如下:(1) n ∈set(n);(2) 在n的左边加上一个自然数,但该自然数不能超过最近添加的数的一半;(3) 按此规则进行处理,直到不能再添加自然数为止。以6为例子,6,6前面可以加1,2,3生成16,26,36,26前面可以加1生成126,同理36生成136.所以6的半数集元素个数为6分别是6,16,26,36,126...

2020-04-26 10:05:22 3110

原创 选择问题

选择问题(Selection Problem),即在n个元素的集合中寻找第K小的元素的问题。第K小的元素又叫第K个顺序统计量。有以下几种变体:找最大值和最小值;同时找最大和最小值找中位数(第n/2小)找任意第K小的元素找Top-K的元素//选择问题 2 #include<iostream> 3 #include<cstdio> 4 #include&lt...

2020-04-18 16:23:33 1403

原创 循环赛日程表算法——分治法

一、问题描述:设有n=2^{k}个选手要进行网球循环赛,要求设计一个满足以下要求的比赛日程表:(1)个选手必须与其他n-1个选手各赛一次;(2)每个选手一天只能赛一次。按此要求,可将比赛日程表设计成一个 n 行n-1列的二维表,其中,第 i 行第 j 列表示和第 i 个选手在第 j 天比赛的选手。二、问题分析:按照分治的策略,可将所有参赛的选手分为两部分,n=2k个选手的比赛日程表就...

2020-04-15 15:59:55 13775

原创 分治策略

1.基本概念:分治策略是对于一个规模为n的问题,若该问题可以容易地解决(比如说规模n较小)则直接解决,否则将其分解为k个规模较小的子问题,这些子问题互相独立且与原问题形式相同,递归地解这些子问题,然后将各子问题的解合并得到原问题的解。2.问题特征:(1)该问题规模缩小到一定的程度就容易解决;(2)该问题可分解为若干个规模较小的相同问题,即该问题具有最优子结构性质。(3)利用该问题分解出的...

2020-04-15 15:45:19 288

原创 整数划分问题 算法

在递归里,要对形参进行判断(1)当n=1时 q(1,m):表示是对1的划分,那么只有一种划分方式 1(2)当m=1时q(n,1):当m=1时其实就是把让所有加数小于等于1,那就是所有加数都是1咯(不考虑负数),当然也只有一种划分方式(3)当n=m时q(n,n):此时就是对n的划分出来的数没有限制,默认限制就是不大于n,此时划分的总类数要分两种情况才比较好解决:1.划分出来的数包含n(或m...

2020-04-10 17:07:25 1096 1

原创 集合的全排列问题

第一个swap函数用来固定当前首位放置的数。第二个swap函数刚开始也是自己与自己固定,相当于位置没有发生改变,接着在经过一次循环之后,第一个swap函数用于交换两个数,然后接着开始新一轮的递归,void per(int list[], int k, int m) { if(k==m) { for(int i=0; i<=m; i++) { printf("...

2020-04-10 16:46:46 180

原创 数据结构 (八) 查找

静态查找 :不涉及插入和删除操作的查找 。动态查找 :涉及插入和删除操作的查找。构建查找的代码实现using namespace std;const int MaxSize = 100;class LineSearch{public: LineSearch(int a[ ], int n); //构造函数 ~LineSearch( ) { } //析构函数为空...

2019-11-28 22:03:02 155

原创 数据结构 (七) 图

图这一章真的是难透了,有好多好多地方不会图的抽象数据类型定义图的遍历是从图中某一顶点出发,对图中所有顶点访问一次且仅访问一次。深度优先遍历 (DFS:Depth First Search)广度优先遍历 (BFS:Broad First Search ;FIFO: First In First Out)基本思想:用一个一维数组存储图中顶点的信息用一个二维数组(称为邻接矩阵...

2019-11-26 16:15:00 127

原创 二叉树

#include<bits/stdc++.h>using namespace std;int main (){ int m,n; cin>>m>>n; while(m>0&&n>0) { if(m>n) m=m/2; else if(m<n...

2019-11-24 19:31:18 87

原创 数据结构 (六) 树和二叉树

这一章真滴是超级超级的难,本来递归就不会,现在又把指针和递归搞在一起,太难为人了,特别是二叉树那个地方,前序中序后序层序,非递归的方法实在是令人费解。树树的遍历:树的前序遍历操作定义为:若树为空,不进行遍历;否则⑴ 访问根结点;⑵ 按照从左到右的顺序前序遍历根结点的每一棵子树。树的后序遍历操作定义为:若树为空,则遍历结束;否则⑴ 按照从左到右的顺序后序遍历根结点的每一棵子树;⑵...

2019-11-11 20:45:36 305

原创 数据结构 (五)字符串

字符串非空串通常记为:S=" s1 s2 …… sn"其中:S是串名,双引号是定界符,双引号引起来的部分是串值 ,si(1≤i≤n)是一个任意字符。串的逻辑结构:子串:串中任意个连续的字符组成的子序列。主串:包含子串的串。子串的位置:子串的第一个字符在主串中的序号。串的存储结构 :方案1:用一个变量来表示串的实际长度。方案2:在串尾存储一个不会在串中出现的特殊字符作为串的终结...

2019-10-21 19:44:58 426

原创 数据结构 (五) 多维数组

一、总结:对这一部分还是很生疏,不太会做,而且Openjudge上的题目进度缓慢,不开森。。。但是我还是会好好做题的,也得抽空复习一下,不然都忘光了。二、笔记:线性表——具有相同类型的数据元素的有限序列。(多维)数组——线性表中的数据元素可以是线性表,但所有元素的类型相同。广义表——线性表中的数据元素可以是线性表,且元素的类型可以不相同。⑴ 存取:给定一组下标,读出对应的数组元素;...

2019-10-21 19:44:18 284

原创 数据结构 (四) 队列

队列队列比栈稍微复杂一点,特别是顺序存储结构中,有一个rear,一个front,要把他俩连起来,挺麻烦的,还有假溢出问题,队空队满的讨论都是比较难的地方,需要仔细推敲。一、基本知识队列:只允许在一端进行插入操作,而另一端进行删除操作的线性表。允许插入(也称入队、进队)的一端称为队尾,允许删除(也称出队)的一端称为队头。空队列:不含任何数据元素的队列。假溢出:当元素被插入到数组中下标最大...

2019-10-10 16:49:43 157

原创 数据结构 (四)栈

栈总体来说,栈的知识比线性表、顺序表简单很多。但是同时也有许多需要注意的点,稍稍不注意就可能会出现错误,因此,虽然简单一点,但也要细心学习。一、基本知识栈:限定仅在表尾进行插入和删除操作的线性表。允许插入和删除的一端称为栈顶,另一端称为栈底。空栈:不含任何数据元素的栈。栈的操作特性:后进先出注意:栈只是对表插入和删除操作的位置进行了限制,并没有限定插入和删除操作进行的时间。二、栈的...

2019-10-09 20:45:33 196

原创 约瑟夫环

约瑟夫环n个人围成一圈,每人有一个各不相同的编号,选择一个人作为起点,然后顺时针从1到k数数,每数到k的人退出圈子,圈子缩小,然后从下一个人继续从1到k数数,重复上面过程。求最后退出圈子的那个人原来的编号。创建一个长度为n的顺序表从第index(初值0)个元素出发,依次计数,每数到d,就将该元素删除index=(index+d-1)%顺序表的长度重复上述工作,直到顺序表中只剩一个元素...

2019-10-08 17:57:11 86

原创 数据结构(三)循环链表 双向链表

循环链表特点:首尾相接的链表。可以从任一节点出发,访问链表中的所有节点。判断循环链表中尾结点的特点: q->next==firsttemplate <class T>struct Node{T data;Node<T> *next;};template <class T>class CycleLinkList{public:...

2019-10-08 17:49:57 183

原创 数据结构(三) 单链表

一、学后感:单链表不如顺序表简单,头插尾插应用广泛,链表使用更广泛;难度有些大。。。二、笔记:结点之间可以连续,也可以不连续存储;结点的逻辑顺序与物理顺序可以不一致;表可扩充。template <typename T>struct Node { T data; Node<T> *next; //此处<T>也可以省略}; 头结点:如果...

2019-09-26 21:16:21 277

原创 数据结构(三)线性表 顺序存储结构

线性表:1、不同应用,操作不同。2、对于复杂的操作,可以用这些数据的组合来操作。3、接口不同。顺序存储结构及实现:连续存储单元依次存储、可通过位置存储元素、可以随机访问、无需额外空间、必须预留空间、各函数只是参数类型不一样,其功能在本质上完全相同。若能写一段通用代码,适用于各种数据类型,则代码的可重用性大大提高。...

2019-09-26 20:34:50 185

原创 数据结构(二)模板

一、学后感模板节省了空间,以前一个函数只能用一个数据类型来实现,但是现在应用模板后,可以用一个函数实现多种数据在函数中的应用,节省了时间和空间。把好几种数据类型合二为一,可以在主函数中使用合适的数据类型,非常方便模板是对具有相同特性的函数或类的再抽象,模板是一种参数化的多态性工具。是一种代码共享机制。用于参数类型不一样,其功能在本质上完全相同的函数上,写一段通用代码,适用于各种数据类型,代...

2019-09-22 11:27:17 148

原创 数据结构(一)绪论

前三周,我学了数据结构关于数据结构的绪论,包含算法等内容;还有第二章线性表的相关内容,但是我觉得忒难了,刚开始的顺序表还比较简单,利用数组,但是后来的链表确实是难,指针本来就不熟悉,加上现在各种样式的链表,就更加难受了,循环链表,双链表更是在单链表的基础上一下子将我们推向了地狱。下面,我可以叙述前三周我们学的数据结构相关内容:第一章 绪论数据结构的基本定义,数据、数据元素、数据结构(有一定关系...

2019-09-21 10:47:08 171

原创 C++知识点后三章总结

C++知识总结最近,在C++课上接触了很多新的知识,也有了很大的新收获,像运算符重载、组合与继承、虚函数与多态性。在运算符重载这一章里,我主要学习了重载输入输出运算符,应用如下:ostream&operator<<(ostream &os,Time&d)//输出运算符{ os<<d.year<<" "; os<&...

2019-06-23 13:10:16 114

原创 c++实现简单系统学习的总结

**c++实现简单系统学习的总结**这个学期主要学习了类的定义、数据结构及其操作等等一系列有关内容最后实现简单的系统功能。这个内容刚开始学的是函数,从函数开始引入类以及类中的构造函数及析构函数,我刚开始的时候没有练习过用所学的东西去写代码,导致学习的内容基本没有进入脑子,所以掌握的也是特别的特别的差。然后经过后来的慢慢沉淀,从一次一次的代码中有了提高。本学期写的第一个系统是ATM机的存款、...

2019-06-18 12:54:49 321

原创 通讯录系统

通讯录系统#include <cstdio>#include <cmath>#include <cstdlib>#include <vector>#include <cstring>#include <string>#include <algorithm>#include <iostream&...

2019-06-15 20:10:52 246

原创 图书馆管理系统

图书馆的管理系统#include <cstdio>#include <cmath>#include <cstdlib>#include <vector>#include <cstring>#include <string>#include <algorithm>#include <iostre...

2019-06-15 20:06:56 306

原创 简单的手机通讯录系统(不是系统)

增删查改#include <cstdio>#include <cmath>#include <cstdlib>#include <vector>#include <cstring>#include <string>#include <algorithm>#include <iostream&g...

2019-04-23 17:43:08 221

原创 ATM机存款,提现,查询余额。

#include <iostream>#include <cstdio>#include <cmath>#include <cstdlib>#include <vector>#include <cstring>#include <string>#include <algorithm>us...

2019-04-19 20:17:11 273

原创 类和对象知识总结

难难的类和对象。。。。主要函数如下(类定义成绩【输入姓名,学号,科目,成绩,学分】):#include <iostream>#include <cstdio>#include <cmath>#include <cstdlib>#include <vector>#include <cstring>#include...

2019-04-13 22:06:14 188

原创 复合类型和函数基本

学习了近一个月的C++语言后,我觉得比上一学期困难多了,先学习的复合类型和函数就非常困难,概念上的东西太难了,主要的还是概念没有实行到代码实现中,所以下一步要多多实现代码的应用上,及时复习学的内容。以下总结一下复合类型和函数的基本内容。复合类型一、 指针和引用。1、 程序运行时,代码和数据都被存储在内存中。内存是有序字节序列。每个字节都有唯一的地址,可以确定字节位置,用来存储和获取数据。2...

2019-03-24 11:49:14 160

原创 求解一元二次方程

在求解一元二次方程(ax²+bx+c=0)时,要考虑到以下几个问题:1.#include&amp;amp;lt; iostream&amp;amp;gt;#include&amp;amp;lt; cmath&amp;amp;gt;#include&amp;amp;lt; iomanip&amp;amp;gt;using namespace std;int main(){double n,a,b,c,p,x1,x2,l,m;c

2019-01-20 10:48:58 1290

原创 十进制转R进制

首先,我们要知道不管是几进制,它们的代码唯一的区别就是进制数不一样,现在我以R进制为例,做出它的代码:#includeusing namespace std;int main(){int n,j,i=1,a[100],R;cin&amp;amp;amp;gt;&amp;amp;amp;gt;n&amp;amp;amp;gt;&amp;amp;amp;gt;R;while(n!=0)//循环内的n必须满足不为0{a[i++]=n%R;n=

2019-01-19 08:05:01 701

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除