代码编织梦想

【PTA】 7-2 租用游艇问题-爱代码爱编程

题目来源:王晓东,《算法设计与分析》 长江游艇俱乐部在长江上设置了n个游艇出租站1,2,…,n。游客可在这些游艇出租站租用游艇,并在下游的任何一个游艇出租站归还游艇。游艇出租站i到游艇出租站j之间的租金为r(i,j),1<=i<j<=n。试设计一个算法,计算出从游艇出租站1 到游艇出租站n所需的最少租金。 解题思路: 1、这是一道

分治,分而治之-爱代码爱编程

分治思想是一种追求高效率的算法思想。 基本概念 分治,分而治之,就是把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题……直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。这种朴素的思想来源于人们生活与工作的经验,也完全适用于技术领域。 适用条件 1、问题的规模缩小到一定的规模就可以较容易地解决。 2、问

八皇后问题-爱代码爱编程

八皇后问题是经典的回溯问题。 问题表述 在 8×8 格的国际象棋上摆放8个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法。 当我们选择了第一个皇后的位置之后,与其处于同行同列同斜线的位置便都无法被选择,第二个皇后只能放在未被第一个皇后所辐射到的位置上。 接着放置第三个皇后,同样不能放在被前两个皇后辐射到的

C++编程规范总结——对美感的追求-爱代码爱编程

一、版权&版本声明 版权声明可以按照以下格式说明: 1、版权信息 2、文件名称,标识符,摘要 3、当前版本号,作者,完成日期 4、版本历史信息 * Copyright (c) 2021,google * All rights reserved. * * 文件名称:fileName.h * 摘 要:简要描述本文件的功能和用法 * * 当前版本

【洛谷】 P2670 [NOIP2015 普及组] 扫雷游戏-爱代码爱编程

扫雷游戏是一款十分经典的单机小游戏。在 n 行 m 列的雷区中有一些格子含有地雷(称之为地雷格),其他格子不含地雷(称之为非地雷格)。玩家翻开一个非地雷格时,该格将会出现一个数字——提示周围格子中有多少个是地雷格。游戏的目标是在不翻出任何地雷格的条件下,找出所有的非地雷格。 现在给出 n 行 m 列的雷区中的地雷分布,要求计算出每个非地雷格周围的地雷格数

【PTA】 7-1堆排序-爱代码爱编程

对n个数,要求用堆排序(最大堆)对其进行排序。 #include<bits/stdc++.h> using namespace std; int n,N=1000; int a[10000]; void HeapAdjust(int a[],int s,int m) //筛选法调整堆 { int x=a[s]

【C++】 类和对象期末复习笔记(四)——多态性-爱代码爱编程

引言 前面两篇基础篇和一篇继承篇已经完工,地址如下👇 基础篇:笔记一笔记二 继承和派生篇:笔记三 正文 1、多态:分为静态多态和动态多态 1)静态多态:函数重载、运算符重载、模板。 2)动态多态:也称运行时多态,在程序运行阶段才能确定关系。 C++ 多态意味着调用成员函数时,会根据调用函数的对象的类型来执行不同的函数。 2、函数重载 1)函数重载:

【C++】 类和对象期末复习笔记(三)——继承和派生-爱代码爱编程

引言: 前面已经写了两篇基础篇笔记,这一篇是继承和派生专题。 前两篇笔记地址如下👇 笔记一笔记二 正文: 1、继承分为单一继承和多重继承 单一继承:派生类仅由一个基类派生 多重继承:派生类由多个基类派生 2、继承方式:公有继承(派生)public、保护继承(派生)protected、私有继承(派生)private 例: class

【C++】 类和对象期末复习笔记(二)-爱代码爱编程

引言 续上一篇笔记,上一篇笔记的地址在这👇 笔记一 正文 1、静态成员 1)静态数据成员 a.若将类的一个数据成员定义成静态型的,则该类的所有对象的该成员共用同一存储空间 b.定义方法:前头加关键字static 例: class Sample { private: int a,b,c; static int d;

【C++】 定义数组类模板-爱代码爱编程

题目: 定义数组类模板,能够对数组元素进行排序、倒置、查找和求和,产生类型实参分别为int型和double型的两个模板类。从键盘输入数据到整型数组与双精度数组中,创建两个数组类对象,分别对整型数组与双精度型数组对象完成上述操作。 代码: #include<bits/stdc++.h> using namespace std; #defin

【C++】类和对象期末复习笔记(一)-爱代码爱编程

引言: 马上就是期末周了,为了复习巩固C++的内容,就做点笔记回顾一下知识点吧。 正文: 1、什么是类和对象? 对象是对客观事物的抽象,可以说是类的变量,类是对对象的抽象,是一种抽象的数据类型。对象是类的实例,类是对象的模板。 2、类的三个基本特征封装、继承、多态 3、面向过程和面向对象的区别 面向过程:程序=函数+调用 面向对象:程序=对象+交

【PTA】 类和对象——6-3 点和线段-爱代码爱编程

已知表示点的类CPoint和表示线段的CLine类, 类CPoint包含:(1)表达点位置的私有数据成员x,y (2)构造函数及复制构造函数 类CLine包含: (1)两个CPoint的点对象(该两点分别为线段的两个端点) (2)构造函数(提示:构造函数中用初始化列表对内嵌对象进行初始化) (3)公有成员函数GetLen,其功能为返回线段的长度,返回值类型

【PTA】 类和对象——6-2 车的不同行为-爱代码爱编程

定义一个车(vehicle)基类,有虚函数Run、Stop等成员函数,由此派生出自行车(bicycle)类、汽车(motorcar)类,它们都有Run、Stop等成员函数。完成这些类使得主函数可以运行并得到正确的输出结果。 函数接口定义: 完成类代码。 裁判测试程序样例: /* 请在这里填写答案 */ int main(int argc, char

【PTA】 类和对象——6-1 Point类的运算-爱代码爱编程

定义Point类,有坐标x,y两个私有成员变量;对Point类重载“+”(相加)、“-”(相减)和“==”(相等)运算符,实现对坐标的改变,要求用友元函数和成员函数两种方法实现。对Point类重载<<运算符,以使得代码 Point p; cout<<p<<endl;可以输出该点对象的坐标。 函数接口定义: 实现Poi

【类和对象】 多态——定义几何图形抽象类Shape-爱代码爱编程

题目: #include<iostream> #include<iomanip> using namespace std; #define PI 3.1415926 class Shape //抽象类,包含两个纯虚函数 { public: virtual float Area() = 0

【类和对象】多态——定义矩阵类Matrix-爱代码爱编程

题目: #include <iostream> using namespace std; class Matrix { int* p, rows, cols; public: Matrix(int r = 0, int c = 0) //构造函数,初始化数组的行数和列数 { rows = r, cols = c

C++大作业——实验室成员管理系统(继承)【附源代码】-爱代码爱编程

实验目的:开发一个实验室成员管理系统,取代结构体类型,定义教师类和学生类。定义实验室类,将所有教师和学生作为成员,建议将所有成员数据的访问权限定义为private。 实验要求:引入类、对象、构造函数等面向对象编程因素,通过编程加深对“封装”的认识,掌握类、对象、成员函数、构造函数的定义与使用。为教师类和学生类定义一个共同的基类Member,将它们共同

C++头文件汇总-爱代码爱编程

#include <algorithm>    //STL通用算法 #include <bitset>     //STL位集容器 #include <cctype> //字符处理 #include <cerrno>     //定义错误码 #include <clocal

数据结构中存储和存取的区别-爱代码爱编程

复习数据结构的时候遇到了这两个词,就想着记录一下,因为我起初有点混淆了emmm…… 一、存取结构 存取偏向于“取”。 存取结构分为顺序存取和随机存取。 *顺序存取:不能通过下标访问,只能按照存储顺序存取,与存储位置有关,存取第n个数据时,必须先访问前(n-1)个数据,例如链表。 *随机存取:可以理解为直接存取,可以通过下标直接访问,与存储位

【类和对象】 继承和派生——定义Date类和Time类并派生出DateTime类-爱代码爱编程

题目: #include<bits/stdc++.h> using namespace std; string itoa(int n, string &s) //这里用string代替了char类型 { string a; int n1=n,t; while(n1) { t=n1%10; n1