笔记
文章平均质量分 58
Soft'Wind
这个作者很懒,什么都没留下…
展开
-
2022年王道数据结构考研复习指导习题代码(线性表)
第2章 线性表2.3.1 设计一个递归算法,删除不带头结点的单链表L中所有值为x的结点。#include <stdio.h>#include <string.h>#include <stdlib.h>#include <assert.h>typedef int ElemType;typedef struct LNode { ElemType data; struct LNode *next;} LNode, *LinkLis原创 2021-04-04 11:10:23 · 1644 阅读 · 3 评论 -
2022年王道数据结构考研复习指导习题代码(排序)
8.3交换排序2.编写双向冒泡算法,在正反两个方向交替进行扫描,即第一趟把关键字最大的元素放在序列的最后面,第二趟把关键字最小的元素放在序列的最前面,如此反复进行。#include <iostream>#include <algorithm>using namespace std;typedef int ElemType;ElemType a[50];void BubbleSort(ElemType a[], int n){ int low = 0, h原创 2021-06-22 07:38:32 · 1078 阅读 · 0 评论 -
2022年王道数据结构考研复习指导习题代码(查找)
7.2.46.写出折半查找的递归算法。初始调用时,low为1,high为ST.length。#include <stdio.h>#include <stdlib.h>#include <string.h>typedef int ElemType;typedef struct { ElemType *elem; int length;} SSTable;int mid;int BinSearchRec(SSTable ST, Ele原创 2021-06-15 19:55:45 · 1000 阅读 · 0 评论 -
2022年王道数据结构考研复习指导习题代码(图)
6.3图的遍历2.试设计一个算法,判断一个无向图G是否为一棵树。若是一棵树,则算法返回true,否则返回false。#include <cstdio>#include <cstring>#define MaxVertexNum 100typedef char VertexType;typedef int EdgeType;typedef struct { VertexType Vex[MaxVertexNum][MaxVertexNum]; Edge原创 2021-06-06 19:58:03 · 1297 阅读 · 0 评论 -
2022王道数据结构考研复习指导习题代码(树与二叉树)
5.2二叉树的概念1.已知一棵二叉树按顺序存储结构进行存储,设计一个算法,求编号分别i和j的两个结点的最近公共祖先结点的值。原创 2021-05-16 22:01:13 · 1717 阅读 · 1 评论 -
KMP算法学习笔记
先总结几个概念:前缀:指除最后一个字符以外,字符串的所有头部字子串。后缀:指除第一个字符外,字符串的所有尾部字串。部分匹配值:字符串的前缀和后缀的最长相等前后缀长度。以’ababa’为例进行说明:‘a’的前缀和后缀都为空集,最长相等前后缀长度为0。‘ab’的前缀为{a},后缀为{b},最长相等前后缀长度为0。‘aba’的前缀为{a,ab},后缀为{a,ba},最长相等前后缀长度为1。‘abab’的前缀为{a,ab,aba},后缀为{a,ab,bab},最长相等前后缀长度为2。‘ababa原创 2021-05-14 21:24:46 · 288 阅读 · 1 评论 -
2022年王道数据结构考研复习指导习题代码(栈和队列)
3.1栈1.写出一个算法,判定所给的操作序列是否合法。若合法,返回true,否则返回false(假定被判定的操作序列已存入一维数组中)。原创 2021-05-05 23:41:35 · 1577 阅读 · 0 评论 -
《深入理解计算机系统》习题2.52解析
题目如下图所示:首先给出求值的式子:值 = (小数位数值 + 1) * (阶码位数值 - 偏置值),这样求出每个值就很简单了。易得1011110的值为15/2,那我们怎样把它转换成格式B呢?首先我们先写出15的二进制表示为[1111],接着15/2的二进制表示为[111.1],然后将小数点左移两位得到1.111*2^2,丢弃开头的1构成小数字段[111],最后阶码字段为2+偏置值7得到9,二...原创 2020-01-31 20:02:56 · 1069 阅读 · 4 评论 -
输出数据流的中位数
使用两个堆,算法思路如下图所示。class MedianFinder {public: /** initialize your data structure here. */ priority_queue<double> maxPQ; priority_queue<double, vector<double>, greater<double> > minPQ; MedianFinder() { }原创 2020-08-14 22:15:12 · 249 阅读 · 0 评论 -
最小生成树——Prim算法
#include <string>#include <iostream>using namespace std;const int maxn = 100;const int INF = 1e9;//邻接表存储结构typedef struct edge_node // 边结点{ int adj_end; // 该边终点编号 int weight; struct edge_node *next_edge;} edgenode;typedef原创 2020-08-27 11:44:50 · 184 阅读 · 0 评论 -
粤澳热身赛 题目E:度假酒店
文神迎来了他第一次出门旅游的机会,但是很不凑巧的是,他把小凑学姐和小Q学弟一起带上了,由于小凑学姐和小Q学弟都是各种宅,文神每次只好自己下楼去吃饭。但是继续很不凑巧,小凑和小Q的惰性影响到了他,他也会经常忘记去吃饭,还好酒店里有他的吃饭记录,记录文神在入住期间早餐、午餐、晚餐各吃了多少次。然而,文神不知道他什么时候开始入住酒店的(可能任意一天的早上、中午或晚上,但保证到了之后马上可以吃饭),所以...原创 2020-04-19 21:00:39 · 142 阅读 · 0 评论 -
粤澳热身赛 题目D:找出字符串中出现次数最多的字母
找出字符串中出现次数最多的字母,并在出现次数最多的字母后面输出(出现了x次)(注意:括号是中文括号!)输入:dhjfaldkfdfd输出:d(出现了4次)hjfald(出现了4次)kfd(出现了4次)fd(出现了4次)输入:aaaaa输出:a(出现了5次)a(出现了5次)a(出现了5次)a(出现了5次)a(出现了5次)#include <string>#include &l...原创 2020-04-19 15:09:48 · 235 阅读 · 0 评论 -
粤澳热身赛 题目B:互评成绩计算
在计算机专业课中,经常有互评分组报告这个环节。一个组上台介绍自己的工作,其他组在台下为其表现评分。最后这个组的互评成绩是这样计算的:所有其他组的评分中,去掉一个最高分和一个最低分,剩下的分数取平均分记为 G1;老师给这个组的评分记为 G2。该组得分为 (G1+G2)/2,最后结果四舍五入后保留整数分。本题就要求你写个程序帮助老师计算每个组的互评成绩。输入第一行给出两个正整数N(> 3)和M...原创 2020-04-19 09:41:15 · 124 阅读 · 0 评论