- 博客(12)
- 收藏
- 关注
原创 算法——像素反转
若要将一个矩阵顺时针旋转90度,将其沿次对角线(右上到左下)翻转(即对应位置交换元素),再将每一列中的元素上下翻转后就得到了结果。
2022-06-25 12:13:00
315
1
原创 C++String类的实现
#include <iostream>#include <string.h>using namespace std;class String{private: char *str; int length;public: String(const char *s) { if (!s) { str = new char[1]; *str = '\0';
2022-02-05 22:38:48
701
原创 数据结构之排序:直接插入排序,折半插入排序,希尔排序,快速排序,堆排序(C++实现)
#include <iostream>using namespace std;#define MAXSIZE 100typedef int KeyType;//以下各排序方法均为非递减顺序typedef struct{ KeyType key;} RedType;class SqList{private: RedType r[MAXSIZE + 1]; //r[0]闲置或用作哨兵单元 int length; void ShellIns
2022-02-04 21:07:05
737
原创 二叉树基本操作(含先序插入、先序、中序、后序、层序遍历,C++实现)
#include <iostream>#include <queue>#define MAX_TREE_SIZE 100#define TREEINCREMENT 10#define OK 1#define FALSE 0#define TRUE 1#define ERROR 0typedef char ElemType;typedef int Status;using namespace std;typedef struct BiTNode{ El
2022-02-04 21:03:45
814
原创 队列基本操作的顺序表示及链式表示(C++实现)
#include <iostream>using namespace std;#define Quene_INIT_SIZE 100#define QUENEINCREMENT 10#define ElemType int#define OK 1#define FALSE 0#define TRUE 1#define ERROR 0typedef int Status;typedef struct QNode{ ElemType data; QNode *
2022-01-26 18:56:14
662
原创 栈基本操作的顺序表示与链式表示(C++实现)
#include <iostream>using namespace std;#define STACK_INIT_SIZE 100#define STACKINCREMENT 10#define ElemType int#define OK 1#define FALSE 0#define TRUE 1#define ERROR 0typedef int Status;class SqStack //顺序栈{private: ElemType *top;
2022-01-26 18:54:26
726
原创 部分顺序表以及链表基本操作(C++实现)
#include <iostream>#define LIST_INIT_SIZE 1000#define LISTINCREMENT 10#define OK 1#define FALSE 0#define TRUE 1#define ERROR 0typedef int ElemType;typedef int Status;using namespace std;typedef class SqList{private: ElemType *elem;
2022-01-21 10:47:02
292
原创 【PTA】7-2 银行业务队列简单模拟
7-2 银行业务队列简单模拟设某银行有A、B两个业务窗口,且处理业务的速度不一样,其中A窗口处理速度是B窗口的2倍 —— 即当A窗口每处理完2个顾客时,B窗口处理完1个顾客。给定到达银行的顾客序列,请按业务完成的顺序输出顾客序列。假定不考虑顾客先后到达的时间间隔,并且当不同窗口同时处理完2个顾客时,A窗口顾客优先输出。输入格式:输入为一行正整数,其中第1个数字N(≤1000)为顾客总数,后面跟着N位顾客的编号。编号为奇数的顾客需要到A窗口办理业务,为偶数的顾客则去B窗口。数字间以空格分隔。输出格式:
2022-01-18 15:15:35
1049
原创 【PTA】7-1 列车厢调度
7-1 列车厢调度 1 ====== <--移动方向 /3 ===== \ 2 ====== -->移动方向有三条平行的列车轨道(1、2、3)以及1-3和2-3两段连接轨道。现有一列车厢停在1号轨道上,请利用两条连接轨道以及3号轨道,将车厢按照要求的顺序转移到2号轨道。规则是:每次转移1节车厢;处在1号轨道的车厢要么经过1-3连接道进入3号轨道(该操作记为"1->3"),要么经过两条连接轨道直接进入2号轨道(该
2022-01-18 15:10:22
1548
原创 【PTA】7-2 重排链表
7-2 重排链表题目:给定一个单链表L1->L2->L3->…->Ln,请编写程序将链表重新排列为Ln->L1->Ln-1->L2->… 例如:给定L为1->2->3->4->5->6,则输出应该为:6->1->5->2->4->3。输入格式:每个输入包含1个测试用例。每个测试用例第1行给出第1个结点的地址和结点总个数,即正整数N (≤10^5)。结点的地址是5位非负整数,NULL地址用−1表
2022-01-18 14:49:00
3206
2
原创 7-1 约瑟夫环
【PTA】7-1 约瑟夫环题目描述N个人围成一圈顺序编号,从1号开始按1、2、3…顺序报数,报p者退出圈外,其余的人再从1、2、3开始报数,报p的人再退出圈外,以此类推。 请按退出顺序输出每个退出人的原序号。输入格式:输入只有一行,包括一个整数N(1<=N<=3000)及一个整数p(1<=p<=5000)。输出格式:按退出顺序输出每个退出人的原序号,数据间以一个空格分隔,但行尾无空格。输入样例:7 3输出样例:3 6 2 7 5 1 4思路本题使用循环链表模拟
2022-01-17 19:00:36
579
原创 洛谷P4387【深基15.习9】验证栈序列
【洛谷】验证栈序列题目描述给出两个序列 pushed 和 poped 两个序列,其取值从 1 到 n(n≤100000)n(n\le100000)n(n≤100000)。已知入栈序列是 pushed,如果出栈序列有可能是 poped,则输出 Yes,否则输出 No。为了防止骗分,每个测试点有多组数据。输入格式:第一行一个整数 q,询问次数。接下来 q 个询问,对于每个询问:第一行一个整数 n 表示序列长度;第二行 n 个整数表示入栈序列;第二行 n 个整数表示出栈序列;输出格式:对于每个
2022-01-17 17:55:21
739
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人