- 博客(24)
- 收藏
- 关注
原创 虚拟机乱码问题,求助!!!
touch了一个hc.c文件,编好了代码,gcc 完之后,再vi,就出现了这样的问题 有没有大佬知道这样的问题怎么解决哇?
2020-12-03 16:10:17
1004
4
原创 程序设计——类的继承+多态内容总结
继承 一、定义 二、语法形式 注: 三、派生类 重名成员 例: class base { public : int a , b ; } ; class derived : public base { public : int b , c ; } ; void f () { derived d ; d . a = 1 ; d . base :: b = 2 ; d . b = 3 ; d .
2020-05-19 23:19:50
533
原创 程序设计——图书馆系统客户端继承版
其他类与客户端相同 一、select类 包括所有的查询操作( 按书名、书号、出版社、出版日期查询图书; 按书名模糊查询图书; 按书名+作者、出版社+作者查询图书(组合查询); 输入起止出版日期,查询指定时间段出版的图书; 按书号查询图书借阅情况; 图书类型查询本人的借阅情况;) class Select{ protected: vector<Book>b1; //vector<Reader>r1; vector<Record
2020-05-19 22:34:13
305
原创 程序设计——图书管理系统客户端
一、基础类、日期类 与图书管理系统的管理端的相同 #include<bits/stdc++.h> using namespace std; //基础类:读者最大借书量、最长借书时间(按天计算)。这两个都是类成员 class Base { private: static int borrownumberMax; static int borrowtimeMax; public: Base(){}; ~Base(){}; s
2020-05-19 22:24:50
1222
2
原创 算法笔记6——回溯算法
一、定义 基本思想 子集树与排列树 //形参t为树的深度,根为1 void backtrack (int t) { if (t>n) update(x); else for (int i=t; i<=n; i++) { //为了保证排列中每个元素不同,通过交换 来实现 swap(x[t], x[i]); if (con...
2020-05-07 13:31:28
320
原创 算法笔记5——贪心算法
一、定义 在求最优解问题的过程中,依据某种贪心标准,从问题的初始状态出发,直接去求每一步的最优解,通过若干次的贪心选择,最终得出整个问题的最优解,这种求解方法就是贪心算法。 二、贪心选择性质 三、贪心求解过程 一般流程 (1)候选集合A:问题的最终解均取自于候选集合A。 (2)解集合S:解集合S不断扩展,直到构成满足问题的完整解。 (3)解决函数solution:检查解集合S是否构成问题的完整...
2020-05-07 11:15:11
436
原创 算法笔记4——动态规划
一、基本思想 动态规划算法通常用于求解具有某种最优性质的问题。 每一个解都对应于一个值,我们希望找到具有最优值的解。基本思想是将待求解问题分解成若干个子问题,先求解子问题,然后从这些子问题的解得到原问题的解。 二、步骤 三、特征 1.最优子结构 2.重叠子问题 在用递归算法自顶向下解问题时,每次产生的子问题并不总是新问题,有些子问题被反复计算多次。 动态规划算法正是利用了这种子问题的重叠性质,...
2020-05-07 10:46:49
295
原创 算法笔记3——递归与分治
一、递归算法定义 程序直接或间接调用自身的编程技巧称为递归算法(Recursion)。 一个过程或函数在其定义或说明中又直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。 二、例题分析 例1(集合全排列): 代码如下: #include<ios...
2020-05-07 10:18:30
326
原创 算法笔记2——递推算法
一、概述 算法特点: 一个问题的求解需一系列的计算,在已知条件和所求问题之间总存在着某种相互联系的关系,在计算时,如果可以找到前后过程之间的数量关系(即递推式)。那么,从问题出发逐步推到已知条件,此种方法叫逆推。无论顺推还是逆推,其关键是要找到递推式。 ...
2020-05-07 09:53:11
302
原创 算法笔记1——绪论
一、算法五大特性 二、算法分析 三、渐进符号 四、最好、最坏、平均情况 注: 五、非递归算法分析 求和表达式如下: 六、递归算法分析 七、算法后验分析 ...
2020-05-06 13:16:07
214
原创 程序设计第二阶段——代码分析+心得体会
一、基础类 读者最大借书量、最长借书时间(按天计算)。这两个都是类成员 class Base { private: static int borrownumberMax; static int borrowtimeMax; public: Base(){}; ~Base(){}; static int getBorrowN...
2020-04-29 09:50:12
574
原创 程序设计第二阶段总结——STL内容总结
一、概述 二、共同操作 1.与大小相关的操作 2.比较操作 3.赋值和交换(swap)操作 4.与迭代器相关的操作 5.元素操作 三、迭代器(literator) 1.概述 2.操作 3.分类 (1)双向迭代器 例: (2)随机存储迭代器 (例:vector) 例: 四、Vector 1.概述 2.构造、拷贝和析构 3.一些基础操作 4.赋值操作 5.元素存取 ...
2020-04-27 23:21:43
278
原创 程序设计心得(分为内容总结、作业分析、学习感受三部分)
一、课上内容总结 1.递归问题 2.结构体 (1)结构体的定义与结构体变量的声明: (2)结构体变量特点: (3)结构体中可以定义函数:(此函数内定义变量,无需结构体变量名.成员名形式) 3.标准库string类型 (头文件:#include 〈string〉) (1) getline()函数 (遇回车时结束) (2)size()函数返回String对象的长度 (3)循环读入Stri...
2020-04-06 02:37:05
1318
原创 数据结构——排序1
排序的基本概念 排序:给定一组记录的集合{r1, r2, ……, rn},其相应的关键码分别为{k1, k2, ……, kn},排序是将这些记录排列成顺序为{rs1, rs2, ……, rsn}的一个序列,使得相应的关键码满足ks1≤ks2≤……≤ksn(称为升序)或ks1≥ks2≥……≥ksn(称为降序)。 正序:待排序序列中的记录已按关键码排好序。 逆序(反序):待排序序列中记录的排列顺序与排...
2019-12-29 21:30:29
335
原创 查找
查找 基本概念 列表:由同一类型的数据元素组成的集合。 关键码:数据元素中的某个数据项,可以标识列表中的一个或一组数据元素。 键值:关键码的值。 主关键码:可以唯一地标识一个记录的关键码。 次关键码:不能唯一地标识一个记录的关键码。 查找 :在具有相同类型的记录构成的集合中找出满足给定条件的记录。 查找的结果 :若在查找集合中找到了与给定值相匹配的记录,则称查找成功;否则,称查找失败。 静态查找 ...
2019-12-29 21:04:12
404
原创 树和二叉树——二叉树
一、二叉树的逻辑结构 二叉树定义 二叉树是n(n≥0)个结点的有限集合,该集合或者为空集(称为空二叉树),或者由一个根结点和两棵互不相交的、分别称为根结点的左子树和右子树的二叉树组成。 二叉树的特点 ⑴ 每个结点最多有两棵子树; ⑵ 二叉树是有序的,其次序不能任意颠倒。 二叉树基本形态 二叉树特殊形态 斜树 1 .所有结点都只有左子树的二叉树称为左斜树; 2 .所有结点都只有右子树的二叉树称为右...
2019-11-10 11:45:01
1061
原创 树和二叉树——树
一、树的逻辑结构 树的定义 树:n(n≥0)个结点的有限集合。 当n=0时,称为空树; 任意一棵非空树满足以下条件: ⑴ 有且仅有一个特定的称为根的结点; ⑵ 当n>1时,除根结点之外的其余结点被分成m(m>0)个互不相交的有限集合T1,T2,… ,Tm,其中每个集合又是一棵树,并称为这个根结点的子树。 树的基本术语 结点的度:结点所拥有的子树的个数。 树的度:树中各结点度的最大值。 叶子...
2019-11-10 10:56:36
266
原创 字符串和多维数组
一、字符串 串的逻辑结构 串:零个或多个字符组成的有限序列。 串长度:串中所包含的字符个数。 空串:长度为0的串,记为:" "。 非空串通常记为: S=" s1 s2 …… sn " 其中:S是串名,双引号是定界符,双引号引起来的部分是串值 ,si(1≤i≤n)是一个任意字符。 子串:串中任意个连续的字符组成的子序列。 主串:包含子串的串。 子串的位置:子串的第一个字符在主串中的序号。 S1="a...
2019-11-09 18:23:19
473
原创 栈和队列——队列
一、队列的逻辑结构 队列:只允许在一端进行插入操作,而另一端进行删除操作的线性表。 空队列:不含任何数据元素的队列。 允许插入(也称入队、进队)的一端称为队尾,允许删除(也称出队)的一端称为队头。 抽象数据类型定义 ADT Queue Data 队列中元素具有相同类型及先进先出特性, 相邻元素具有前驱和后继关系 Operation: InitQueue 前置条件:队列不存在 输入:无 功能:初始...
2019-11-09 17:39:16
388
原创 栈和队列——栈
一、特殊线性表——栈 栈:限定仅在表尾进行插入和删除操作的线性表。 空栈:不含任何数据元素的栈。 允许插入和删除的一端称为栈顶,另一端称为栈底。 插入:入栈、进栈、压栈 删除:出栈、弹栈 1.栈的抽象数据类型定义 ADT Stack Data 栈中元素具有相同类型及后进先出特性, 相邻元素具有前驱和后继关系 Operation InitStack 前置条件:栈不存在 输入:无 功能:栈的初始化 输...
2019-11-09 17:17:06
283
原创 线性表——链表
一、指针变量 变量的三要素 名字,内存地址,值 变量的左值,右值 左值指变量的内存地址 右值:值 在赋值表达式中,赋值号左边需要左值,右边需要右值;如a=a+100 指针变量 指针变量的右值本身又是一个左值 二、单链表结点 template <typename T> struct Node { T data; Node<T> *next; //此处...
2019-11-09 16:44:56
192
原创 第二章线性表——线性表基本概念+顺序表
一、线性表的逻辑结构 1.定义 是零个或多个具有相同类型的数据元素的有限序列。 数据元素的个数定义为线性表的 长度 ,长度等于零时称为空表 一个非空表通常记为 L = ( a 1 , a 2 ,……, a n ) 其中, a i ( 1 ≤ i ≤ n )称为数据元素 下标 i 表示该元素在线性表中的位置或序号, 称元素 a i 位于表的第 i 个位置,或称 a i 是表中的第 i 个元素。 2...
2019-11-09 11:38:38
398
原创 模板
模板是对具有相同特性的函数或类的再抽象,模板是一种参数化的多态性工具。 所谓参数化多态性,是指将程序所处理的对象的类型参数化,使一段程序代码可以用于处理多种不同类型的对象。 一、模板分类: 函数模板 类模板 二、模板的实例化(important) 模板通过参数实例化可以构建具体的函数或类,称为模板函数和模板类。 三、函数模板 格式: template <模板形参表> 返回值类型 ...
2019-09-22 18:48:08
148
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅