- 博客(19)
- 问答 (1)
- 收藏
- 关注
原创 实现对一个字符求其CRC码(循环冗余校验码)
#include<iostream>using namespace std;#include<fstream>#include<bitset> //将ASCII码转2进制所需的库函数 unsigned char calculate_crc8(unsigned char *data_ptr){ unsigned char i, crc; crc = *data_ptr; for (i=8; i>0; --i) .
2022-03-22 20:04:19 392
原创 单调递增最长子序列
7-1 单调递增最长子序列 (20 分)设计一个O(n2)时间的算法,找出由n个数组成的序列的最长单调递增子序列。输入格式:输入有两行: 第一行:n,代表要输入的数列的个数 第二行:n个数,数字之间用空格格开输出格式:最长单调递增子序列的长度输入样例:在这里给出一组输入。例如:51 3 5 2 9结尾无空行输出样例:在这里给出相应的输出。例如:4结尾无空行#include<iostream>using namespac
2021-11-08 16:01:45 540
原创 2021-11-04算法期中考
A 院庆抽奖(分治法)1000MS64MBDescription为了庆祝信息学院成立20周年,学院举行了网络抽奖活动,每个信息学院的校友和教师都分配一个不重复号码,随机进行抽奖。请你设计一个高效的算法,根据获奖号码找到获奖者的姓名。如果该号码不存在,则输出none。请用分治法实现,禁止调用库函数,否则没有分数。要求算法的最坏时间复杂度为O(logn)Input第一行一个数字n,表示共有多少人参与抽奖, 1<=n<10^6 下面n行,每行包含号码和姓名,以空格分隔,已按号码升序
2021-11-08 15:58:13 556
原创 3-4 最低通行费 (20 分)
一个商人穿过一个N×N的正方形的网格,去参加一个非常重要的商务活动。他要从网格的左上角进,右下角出。每穿越中间1个小方格,都要花费1个单位时间。商人必须在(2N-1)个单位时间穿越出去。而在经过中间的每个小方格时,都需要缴纳一定的费用。这个商人期望在规定时间内用最少费用穿越出去。请问至少需要多少费用?注意:不能对角穿越各个小方格(即,只能向上下左右四个方向移动且不能离开网格)。输入格式:第一行是一个整数,表示正方形的宽度N (1≤N<100);后面N行,每行N个不大于100的整..
2021-10-31 22:27:40 189
原创 1002 写出这个数 (20 分)
读入一个正整数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。输入格式:每个测试输入包含 1 个测试用例,即给出自然数n的值。这里保证n小于10100。输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有 1 空格,但一行中最后一个拼音数字后没有空格。输入样例:1234567890987654321123456789输出样例:yi san wu#include<iostream>using namespace ...
2021-07-13 23:19:43 72
原创 数据结构个人笔记
第一章:绪论数据的逻辑结构: 线性结构、非线性结构数据的存储结构(物理结构): 顺序存储结构、链式存储结构算法: 有穷性、确定性、可行性、输入、输出评价算法优劣的标准: 正确性、可读性、健壮性、高效性影响算法时间代价最主要的因素是问题规模数据结构是一门研究非数值计算的程序设计问题中计算机的( )以及它们之间的关系和运算的学科.A.操作对象B.计算方法C.逻辑存储D.数据映像数据的逻辑关系是指数据元素的( ).A.关联B....
2021-06-29 14:01:23 436
原创 电子电路个人笔记
晶体三极管有两个PN结,分别是发射结和集电结,分三个区域集电区、基区和发射区。晶体管的三种工作状态是放大状态、饱和状态和截止本征半导体掺入微量的三价元素形成的是P型半导体,其多子为空穴。一个NPN三极管发射结和集电结都处于正偏,则此三极管处于饱和状态;其发射结和集电结都处于反偏时,此三极管处于截止状态;当发射结正偏、集电结反偏时,三极管为放大状态理想运放同相输入端和反相输入端的“虚短”指的是同相输入端与反相输入端两点电位相等,在没有短接的情况下出现相当于短接时的现象。放大电路
2021-06-28 16:04:20 3912
原创 创建文本文件,其内容为九九乘法表
#include<iostream>#include<fstream>using namespace std;int main(void){ int i, j,n; ofstream out; out.open("mul.txt");//打开mul.txt文件 if (!out) {//判读是否打开 cerr << "can't open the file" << endl; retu...
2021-06-17 18:31:07 1206 3
原创 编写程序将第二个文本文件的内容追加到第一个文本文件的尾部
#include <iostream>#include <fstream>#include <cstdlib>using namespace std;int main(){ ifstream in; ofstream out; char ch; out.open("t1.txt", ios::app); // 以追加方式打开文本文件 if (!out) { cout << "Can...
2021-06-17 18:06:09 1020
原创 分数类(课上练习)
定义一个分数类,其数据成员为分子和分母,用成员函数重载运算符=,+,-,以实现分数#include<iostream>using namespace std;class A{ int z; int m;public: A(int z1 = 0, int m1 = 0) { z = z1; m = m1; } A operator+(const A& a1) { ...
2021-06-17 18:05:04 734
原创 从键盘输入若干学生信息,写入文本文件中,再从该文本文件中读出学生的信息。
具体要求如下:(1)应定义学生类Student,成员数据包括学号、姓名和成绩等;(2)建议用友元函数为学生类重载输入输出流的<<和>>运算符,实现学生信息的整体输入输出功能;例如:friend istream& operator >> (istream&, Student&);friend ostream& operator << (ostream&, Student&);(3) 要求在主函数
2021-06-14 21:56:51 3231
原创 实验室成员管理系统C++
要求: 为教师类和学生类定义一个共同的基类Member,将它们共同的成员数据和函数封装到基类Member中。基类Member数据成员的访问属性可定义为protected,便于派生类中直接访问。教师类和学生类作为Member的派生类,它们的成员数据和成员函数可能需要做相应修改,应尽量复用Member类的代码。实验室类和主函数应该不需要修改。参考界面如下:*************************************************** 实验室成员管理系统C++控制台...
2021-06-14 21:15:11 649
原创 7-1 运算符重载 (10 分)(分数类,输出最简分数)
请定义一个分数类,拥有两个整数的私有数据成员,分别表示分子和分母(分母永远为正数,符号通过分子表示)。 重载运算符加号"+",实现两个分数的相加,所得结果必须是最简分数。输入:第一行的两个数 分别表示 第一个分数的分子和分母(分母不为0)。 第二行的两个数 分别表示 第二个分数的分子和分母。输出:第一个数表示分子,第二个数表示分母(若分数代表的是整数,则不输出分母)。输入样例:1 52 5输出样例:3 5...
2021-06-14 11:51:25 1144
原创 6-3 点和线段 (20 分)
已知表示点的类CPoint和表示线段的CLine类, 类CPoint包含:(1)表达点位置的私有数据成员x,y (2)构造函数及复制构造函数 类CLine包含: (1)两个CPoint的点对象(该两点分别为线段的两个端点) (2)构造函数(提示:构造函数中用初始化列表对内嵌对象进行初始化) (3)公有成员函数GetLen,其功能为返回线段的长度,返回值类型为整型 (4)类属性成员count用于记录创建的CLine类对象的个数,及用于显示count值的ShowCount函数; 要求: (1)实现满足上述属性和
2021-06-14 10:04:46 1057 2
原创 6-2 车的不同行为 (10 分)
定义一个车(vehicle)基类,有虚函数Run、Stop等成员函数,由此派生出自行车(bicycle)类、汽车(motorcar)类,它们都有Run、Stop等成员函数。完成这些类使得主函数可以运行并得到正确的输出结果。函数接口定义:完成类代码裁判测试程序样例:/* 请在这里填写答案 */int main(int argc, char const *argv[]){ Vehicle veh; Bicycle bic; Motorcar mot; ru
2021-06-13 20:49:33 1029
原创 6-1 Point类的运算 (10 分)
定义Point类,有坐标x,y两个私有成员变量;对Point类重载“+”(相加)、“-”(相减)和“==”(相等)运算符,实现对坐标的改变,要求用友元函数和成员函数两种方法实现。对Point类重载<<运算符,以使得代码 Point p; cout<<p<<endl;可以输出该点对象的坐标。函数接口定义:实现Point类。裁判测试程序样例:/* 请在这里填写答案 */int main(int argc, char const *argv[]){
2021-06-13 20:25:24 1961
原创 7-3 马会飞 (15 分)
已知Horse类是Pegasus类的父类,根据以下主函数完善程序内容,以实现规定的输出。不允许改变主函数的内容。int main(){ Horse *p1 = new Horse; //输出:Horse 申请了空间... Horse *p2 = new Pegasus; /* 输出两行: Horse 申请了空间... Pegasus 申请了空间...
2021-06-13 19:09:55 408
原创 6-1 判断一个点是否在一个圆的内部 (20 分)
裁判测试程序样例:/* 请在这里填写答案 */int main(int argc, char const *argv[]){ double x,y; double r; cin>>x>>y>>r; Point p(x,y); Circle c(p,r); cin>>x>>y; Point p1(x,y); bool b = c.isPointIn(p1); cout&
2021-06-13 18:52:29 4916
空空如也
最短寻道时间算法SSTF,它是找距离它最短的磁道,如果它两边的磁道距离一样怎么选啊
2021-12-06
TA创建的收藏夹 TA关注的收藏夹
TA关注的人