- 博客(63)
- 资源 (1)
- 收藏
- 关注
原创 [offer9]用两个栈实现队列
题目用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 )输入:[“CQueue”,“appendTail”,“deleteHead”,“deleteHead”][[],[3],[],[]]输出:[null,null,3,-1]//解释:输入中。上面的中括号为操作。下面的中括号为操作的数据。来源:力扣(LeetCode)链
2022-05-29 17:43:38 186
原创 [899]有序队列
题目给定一个字符串 s 和一个整数 k 。你可以从 s 的前 k 个字母中选择一个,并把它加到字符串的末尾。返回 在应用上述步骤的任意数量的移动后,字典上最小的字符串 。来源:力扣(LeetCode)链接:https://leetcode.cn/problems/orderly-queue著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。示例1输入:s = “cba”, k = 1输出:“acb”解释:在第一步中,我们将第一个字符(“c”)移动到最后,获得字符串 “b
2022-05-27 14:54:31 238
原创 [Offer29] 排序的循环链表
个人向题目给定循环单调非递减列表中的一个点,写一个函数向这个列表中插入一个新元素 insertVal ,使这个列表仍然是循环升序的。给定的可以是这个列表中任意一个顶点的指针,并不一定是这个列表中最小元素的指针。如果有多个满足条件的插入位置,可以选择任意一个位置插入新的值,插入后整个列表仍然保持有序。如果列表为空(给定的节点是 null),需要创建一个循环有序列表并返回这个节点。否则。请返回原先给定的节点。来源:力扣(LeetCode)链接:https://leetcode.cn/problem
2022-05-26 11:31:47 307
原创 [leetcode19]删除链表中倒数第n个结点
个人向前后双指针题目给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。示例 1:输入:head = [1,2,3,4,5], n = 2输出:[1,2,3,5]示例 2:输入:head = [1], n = 1输出:[]示例 3:输入:head = [1,2], n = 1输出:[1]提示:链表中结点的数目为 sz1 <= sz <= 300 <= Node.val <= 1001 <= n <= sz进阶:你能尝试使用
2022-05-23 10:53:24 154
原创 [offer78]合并多个有序链表
个人向,仅作记录回顾合并多个有序链表题目给定一个链表数组,每个链表都已经按升序排列。请将所有链表合并到一个升序链表中,返回合并后的链表。示例 1:输入:lists = [[1,4,5],[1,3,4],[2,6]]输出:[1,1,2,3,4,4,5,6]解释:链表数组如下:[1->4->5,1->3->4,2->6]将它们合并到一个有序链表中得到。1->1->2->3->4->4->5->6示例 2:输
2022-05-21 16:31:36 391
原创 [Offer18]删除链表的节点
个人向,仅作记录回顾问题给定单向链表的头指针和一个要删除的节点的值,定义一个函数删除该节点。返回删除后的链表的头节点。注意:此题对比原题有改动示例 1:输入: head = [4,5,1,9], val = 5输出: [4,1,9]解释: 给定你链表中值为 5 的第二个节点,那么在调用了你的函数之后,该链表应变为 4 -> 1 -> 9.示例 2:输入: head = [4,5,1,9], val = 1输出: [4,5,9]解释: 给定你链表中值为 1 的第三个节点,那
2022-05-19 15:13:42 110
原创 [Leetcode15]三数之和
个人向,仅作记录回顾双指针问题给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。注意:答案中不可以包含重复的三元组。示例 1:输入:nums = [-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]示例 2:输入:nums = []输出:[]示例 3:输入:nums = [0]输出:[]提示:0 <= nums.length &l
2022-05-18 14:33:24 158
原创 2021.11.10汇编考试
储存器寻址2.指令MOV AX, [BX+DI]中源操作数的寻址方式是:( d )(5分)A. 寄存器间接寻址B. 寄存器寻址C. 寄存器相对寻址D. 基址变址寻址①对于储存器寻址来说可用来寻址的寄存器有基址寄存器:bp和bx变址寄存器: bi和si变址寄存器和基址寄存器不可以同时使用②寄存器间接寻址意味着只用寄存器的内容来充当偏移地址:[bx]③寄存器寻址中的“相对”寻址意味着在寄存器的基础上加一个偏移量:[bx+666]符号扩展指令3.执行指令“MOV AL, 85
2021-11-07 23:09:23 1307
原创 ccf线性分类器(C++)202006-1
题目链接一。将一个代入直线方程后结果大于零或小于零表示该点位于直线的上侧还是下侧二。我是以第一个点为基准。第一个点的位置信息可以将其类型和位置信息用异或存放起来。这样可以少写很多代码。嘿嘿写出的代码还是挺漂亮的#include <iostream>#include<string>using namespace std;int a, b, c, n,m;struct info { int x; int y; bool id;//true为A;false为B}p
2021-08-31 21:41:52 295
原创 算法第四版jar包
鉴于网上都收费,我手动打了一份jar包链接:https://pan.baidu.com/s/1SJUWi_BnNklOtulKIL8uwg提取码:hc71
2021-07-09 21:20:39 393
原创 2021.6.16JavaWeb考试
又要考试了,临时抱抱脚丫子~目录第八章EL表达式第八章EL表达式答案在上面。以下内容分析选项。1.A。EL的内置对象和JSP的有挺大的区别的。对于JSP来说,一共有9个内置对象:request、response、session、application、out、pagecontext、config、page、exception;但是如果使用EL表达式的话,需要没有request,response这些对象,想要获得request都需要写${pageContext.request}D。javabea
2021-06-07 21:02:12 478 3
原创 idea中导包方法
导包然后选择你要加入的jar包这时候编辑器中的报错已经消失了但是还没完成同样,在libraries下面右键,这是刚才添加的jar包名字应该跟你的不一样然后apply就行了
2021-05-12 17:02:46 3651
原创 idea中好用的快捷键
目录任意样式选中文本矩形选中文本格式化代码在类中找到可重写的方法任意样式选中文本ctrl+shift+alt按住不放拖动鼠标选择文本矩形选中文本切换到该模式:shift+alt+insert同样方式取消该模式格式化代码ctrl+alt+l在类中找到可重写的方法ctrl+o...
2021-05-12 14:52:05 144
原创 燕山大学校园网自动登录问题解决方案
最近用校园网在谷歌浏览器上总是自动登录校园网(不是某个运营商尝试了几下发现一个解决方案在登录界面点击自助服务找到一个暂停的蓝色按钮,确定此时打开两个https://auth.ysu.edu.cng其中第一个因为服务暂停无法登录所以现在调好你想要登录的运营商第二个用来恢复服务只需要登录一下,点击恢复恢复好之后找到刚刚设置好的第一个网站勾上自动登录,记住密码就可以了以后注意在宿舍外使用的时候不要勾上自动登录就行了...
2021-03-29 15:14:20 4820 3
原创 1041 Be Unique (20 point(s))(哈希:找第一个出现一次的数)
标题思路需要两样东西:一个是记录顺序的表,一个是记录次数的表代码#include <iostream>using namespace std;int hashtable[100100], num[100100];#define rep(i,j,k) for(int i=j;i<k;i++)int main() { int n; cin >> n; rep(i, 0, n) { cin >> num[i]; hashtable[num[i
2021-03-13 15:15:16 113
原创 (课设第一套)1-4 消息传递接口 (100 分)(模拟:线程)
题目1-4 消息传递接口 (100 分)老师给了 T 份 MPI 的样例代码,每份代码都实现了 n 个进程通信。这些进程标号从 0 到 n − 1,每个进程会顺序执行自己的收发指令,如:“S x”,“R x”。“S x”表示向x 号进程发送数据,“R x”表示从 x 号进程接收数据。每一对收发命令必须匹配执行才能生效,否则会“死锁”。 举个例子,x 号进程先执行发送命令“S y”,y 号进程必. 须. 执行接送命令“R x”,这一对命令才执行成功。否则 x 号进程会一直等待 y 号进程执行对应的接收命令
2021-02-28 15:12:22 194
原创 (课设第一套)1-5 317号子任务 (100 分)(Dijkstra:重边自环)
题目1-5 317号子任务 (100 分)背景:“你在平原上走着走着,突然迎面遇到一堵墙,这墙向上无限高,向下无限深,向左无限远,向右无限远,这墙是什么?”——《流浪地球》原著我们带着地球去流浪了,为了处理流浪过程中可能会发生的危机,联合政府找到你,希望你能协助完成 317 号子任务:制定应急预案。题目:地球的表面有 n 个据点,这些据点之间存在 m 条双向道路。这些据点中,有的是建立在行星发动机之下,受到行星发动机的保护(行星发动机据点),而其他据点则没有行星发动机的保护(普通据点,比如燃料
2021-02-28 14:39:14 626
原创 (课设第一套)1-2 二十四点 (100 分)(字符串处理:固定长度的不含括号的运算表达式)
题目1-2 二十四点 (100 分)定义每一个游戏由 4 个从 1-9 的数字和 3 个四则运算符组成,保证四则运算符将数字两两隔开,不存在括号和其他字符,运算顺序按照四则运算顺序进行。其中加法用符号 + 表示,减法用符号 - 表示,乘法用小写字母 x 表示,除法用符号 / 表示。在游戏里除法为整除,例如 2 / 3 = 0,3 / 2 = 1, 4 / 2 = 2。 老师给了你 n 个游戏的解,请你编写程序验证每个游戏的结果是否为 24 。输入格式:从标准输入读入数据。第一行输入一个整数 n,从第
2021-02-28 14:15:08 140
原创 (课设第一套)1-1 小中大 (100 分)(数据处理:求中位数)
题目老师给了你 n 个整数组成的测量数据,保证有序(可能为升序或降序),可能存在重复的数据。请统计出这组测量数据中的最大值、中位数以及最小值,并按照从大到小的顺序输出这三个数。输入格式:从标准输入读入数据。 第一行输入一个整数 n,在第二行中存在 n 个有序的整数,表示测量数据,可能为升序或降序排列,可能存在连续多个整数相等,整数与整数之间使用空格隔开。输出格式:输出到标准输出。 包含一行,包括最大值、中位数以及最小值共三个数,并按照从大到小的顺序输出。数据与数据之间使用空格隔开。对于整数请直接输
2021-02-28 14:12:35 251
原创 1040 Longest Symmetric String (25 分)(动态规划:最长回文)
题目链接思路上一篇判断完这些问题需要确定从哪里开始写状态方程可以确保无后效性拍脑门一想除了长度为2,长度为1的子串没法通过状态方程推出3及3以上的都可以满足代码中dp[i][j]表示下标为i到j的字符串是否回文则在子串长度≥3时可以通过dp[i+1][j-1]对dp[i][j]进行推导代码using namespace std;#include <iostream>#include<string>int dp[1010][1010], ans =
2021-02-23 08:42:47 90
原创 1007 Maximum Subsequence Sum (25 分)(动态规划:最大连续子串和)
题目链接思路先判断是否满足含重叠子问题和最优子结构?从 答案 判断就可以是答案,不是随便一个子串就样例来说例如 1 2 3 4这个子串把最后一个元素4去掉就生成了另一子串1 2 3也就是说一种状态包含了另一种状态这种状态是以3结尾的子串而初始状态是以4结尾的子串那满足最优子结构?也就是6 (1+2+3)是否是以3为结尾的子串的最大值?是,则满足最优个人理解代码using namespace std;#include <iostream>int origi
2021-02-22 08:48:02 167
原创 1061 Dating (20 分)(字符串处理:对两个字符串中相同位置的相同字符进行筛选)
题目链接思路?如果你还没做这道题,建议不做为什么》这道题就没说明白他想干啥题目中:①common的含义没说清楚:是字符相同且位置相同②这样的话,就会出现另外一个问题,你写的代码过不了。因为题目让你找两个字符串在相同位置上第一对相同的大写字母,可测试数据中,所给的第一对相同的大写字母是不合法的,也就是实际上你要找第二对或者第三对符合题意的大写字母,这不是自相矛盾?md浪费时间代码using namespace std;#include <iostream>#include&l
2021-02-21 13:26:23 179
原创 1152 Google Recruitment (20 分)(字符串处理:六素数)
题目链接思路逐个匹配吧,分别判断是不是素数不过有更快的方法,点这里代码using namespace std;#include<bits/stdc++.h>bool isPrime(string s) { int n = stoi(s); if (n <= 3) return n > 1; if (n % 6 != 1 && n % 6 != 5) return false; for (int i = 5; i < sqrt(n);
2021-02-20 10:38:23 115
原创 1140 Look-and-say Sequence (20 分)(字符串处理:字符串分块处理)
题目链接思路刚开始我用两个索引来处理字符串,后来借鉴其他人的思路,其实一趟下来就能解决问题,笨啊代码一using namespace std;#include <iostream>#include<string>int main() { int n; string origin; cin >> origin >> n; while (--n) { int i = 0, j; string tank = ""; while (i
2021-02-18 15:36:25 117
原创 1108 Finding Average (20 分)(字符串处理:排除异常数字)
题目链接思路自己用排除法做完,发现我真是一朵奇葩其他人都在sscanf…我在排除…/(ㄒoㄒ)/~~不过我的排除条件写多了没用的都删了如果你也在排除,同时希望完成你的代码的话只需要注意:对于每一次输出入①参与计算平均数的数据只包含0123456789.-这些字符(我试过了,我把含有这些字符以外的数据都排除了,并不影响结果)所以,测试点中不包含+号的数据,例如+152或2+4或253+不用考虑,测试数据中没有②然后按照题意排除大于1000和小于-1000的③然后再排除小数点后多于两位数的
2021-02-17 22:49:02 170
原创 1060 Are They Equal (25 分)(字符串处理:转换成科学计数法并进行位数裁剪)
题目链接思路刚开始二十多行写完了,结果很糟糕主要是考虑的不周到参考了一二的测试数据进行修改就好了代码using namespace std;#include <iostream>#include<string>int n;void process(string& a) { if (strtod(a.c_str(),NULL) == 0.0) {//6-11行:首先处理零:用函数strtod(string to double), 就可以不用思考前导零
2021-02-16 15:59:02 98
原创 1077 Kuchiguse (20 分)(字符串:求相同后缀)
题目链接思路借鉴其他人的思路,将字符串反转,方便从同一下标处开始遍历代码using namespace std;#include <iostream>#include<string>#include<algorithm>int main() { int n; cin >> n; getchar(); string* pointer = new string[n]; int min = 0x3f3f3f3f; for (int i =
2021-02-15 14:50:40 93
原创 1073 Scientific Notation (20 分)(字符串处理:科学计数格式的展开)
题目链接思路字符串处理①尝试不用scanf②用cplusplus文档查函数③习惯于一种自己喜欢的传参方式代码using namespace std;#include<string>#include <iostream>int main() { string process; cin >> process;//"+1.23400E-03" if (process[0] == '-')cout << '-'; size_t e = pr
2021-02-14 21:07:52 103
原创 1035 Password (20 分)(字符串:字符串中特定字符的替代)
标题思路给的密码不是特别长。直接用algorithm里的replace就可以了。容器自带的replace不太容易使用。代码using namespace std;#include<unordered_map>#include<string>#include<vector>#include <iostream>#include<algorithm>int main() { //需求>展示修改项,修改了多少项,修改结果顺序列
2021-02-13 12:39:45 96
原创 1118 Birds in Forest (25 分)(并查集:计算集合个数和其成员个数)
题目链接第一道第二道①统计全体个数,用map标记或set存储②处理某个大集合的额外信息,只需要揪出其首领就好,判断条件:father[i]=i;代码using namespace std;#include<bits/stdc++.h>map<int, bool>book;int father[10010],number[10010],cnt,num, p, q;int findfather(int x) { int a = x; while (x != fat
2021-02-12 11:34:57 160
原创 1114 Family Property (25 point(s))(并查集:计算家族成员个数及总财产)
题目链接思路:并查集①并查集的目的在于分类和高效地合并,因为每个集合内部都有很强的关系约束,所以只要将两个集合代表结点建立关系就相当于两个集合的合并。时间有的是的话,直接来个用STL的set傻傻地find、insert就好了②并查集的个人理解:先并(Union函数),然后查(findFather),最后集(建立联系)③这一题虽然是并查集,但对附加信息处理的要求实在有点狗血,即在union两个id的时候,不仅仅是father[fb]=fa;而是需要先把a和b的个人财产分别归并到大家族中,然后对两个大集
2021-02-11 19:21:41 221
原创 1107 Social Clusters (30 point(s))(并查集:并查集的基本操作)
题目链接丝路(并查集)①分类题,一定要明白对谁分类,是对人,而不是对爱好,这决定了father数组的存法②算法参考自《算法笔记》329页和柳婼,对她的算法进行了一点修改,就是算每个类别的人可以在union的同时顺便求出而不用单独另求,没错我就是柳神背后的男人代码using namespace std;#include<bits/stdc++.h>int father[1010],hobby[1010],num[1010],like,n,k,cnt;int findfather(i
2021-02-10 13:01:44 161
原创 1123 Is It a Complete AVL Tree (30 point(s))(AVL树:构造AVL以及判断是否为完全二叉树)
题目链接思路?①还是参考《算法笔记的AVL部分,做了一些代码上的简化(相比于另一道题②完全二叉树的判断参考于这里代码using namespace std;#include<bits/stdc++.h>struct node { int data; node* left, * right; node(int d = 0) :data(d), left(NULL), right(NULL) {}};int getheight(node* n) { return n ==
2021-02-09 15:31:36 179
原创 1066 Root of AVL Tree (25 point(s))(AVL树:AVL树的构造)
题目链接思路?主要是参考《算法笔记》一书写的题解代码using namespace std;#include <iostream>#include<algorithm>struct node { node* left,*right; int data, h; node(int d=0) { h = 1; data = d; left = right = NULL; }};int getheight(node* r) { return r ==
2021-02-08 21:26:19 149
原创 1149 Dangerous Goods Packaging (25 point(s))(配对关系有重叠:在给定序列中判定是否有配对)
题目链接思路①一种化学物质可与多种物质反应,所以用multimap的一对多关系②对每一次判断,逐个输入化学物质,每次将可与某种化学物质反应的所有物质存储在vector中,以后只需判断该物质在不在vector里就好代码using namespace std;#include<bits/stdc++.h>bool cnt[100000];multimap<int, int>danger;int N, M, p, q,judge[1010],num;vector<
2021-02-06 10:49:30 129 1
原创 1129 Recommendation System (25 point(s))(排序:依据多种标准进行排序)
题目链接思路按次数和索引来排序次数是第一标尺索引是第二标尺通过sort(begin,end,cmp)的第三个参数来说明如何排序代码using namespace std;#include <iostream>#include<vector>#include<algorithm>vector<int>ranks;int cnt[50010];bool visited[50010];int n, k,temp;bool cmp(in
2021-02-05 11:17:23 115
原创 1121 Damn Single (25 point(s))(配对关系无重叠:在给定序列中判断是否有配对)
题目链接silu题目要求对参加聚会的人进行判断对单身狗进行保留考虑到删除操作使迭代器失效是一个头疼的问题那就不删吧要么就不用容器,就用一个静态数组存储参加聚会的人都是在避免删除操作留下的烂摊子代码using namespace std;#include<set>#include<map>#include <iomanip>#include <iostream>int n,p, q;map<int, int>couple
2021-02-04 10:02:48 159
美发店系统管理c++.zip
2020-06-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人