机试刷题
文章平均质量分 95
连理o
负优化砖家
展开
-
剑指 Offer (一):面试需要的基础知识
目录面试题 3: 数组中重复的数字题目一: 找出数组中重复的数字题目二:不修改数组找出重复的数字参考文献面试题 3: 数组中重复的数字题目一: 找出数组中重复的数字leetcode测试用例:长度为 nnn 的数组里包含一个或多个重复的数字数组中不包含重复的数字无效输入测试用例 (输入空指针 (假设输入参数为数组);长度为 nnn 的数组中包含 0∼n−10\sim n-10∼n−1 之外的数字)解法一遍历整个数组,将遍历到的数字存进哈希表。如果发现哈希表内已有该数字,则说明原创 2022-03-04 11:53:45 · 522 阅读 · 0 评论 -
机试 C / C++ 注意事项
本文为《算法笔记》的学习记录目录概念扫盲~C / C++ 注意事项概念扫盲~在线评测系统 (Online Judge, OJ):一般来说, 在OJ上可以看到题目的题目描述、 输入格式、 输出格式、 样例输入及样例输出。如:PAT评测结果 AC:Accepted (答案正确)C / C++ 注意事项输入和输出请使用 scanf 和 printf !(#include <cstdio>) 它们比 cin 和 cout 要快得多。并且不要混用它们,有时会出问题在给 long lo原创 2020-10-07 21:00:55 · 602 阅读 · 0 评论 -
简单模拟
题目在此目录题目很简单,唯一需要注意的是:最后一个样例给的 NNN 很大,如果用数组做的话,需要预留足够大的空间,否则会出现段错误(由数组越界引起)代码如下:#include <iostream>#include <array>using namespace std;const int maxn = 300000;array<unsigned int, maxn> v;int main(void){ unsigned int num;原创 2020-09-26 22:36:21 · 220 阅读 · 0 评论 -
算法初步 (排序, 散列, 贪心, 二分, two pointers)
本文主要总结机试中一些可以调用C++标准库设施或算法进行解决的问题目录排序PAT (Advanced level) 1062 Talent and VirtuePAT (Advanced level) 1012 The Best Rank排序C++中可以使用sort() / stable_sort()进行排序,详细用法见这篇博客如果是多关键字排序,例如:如果两个学生分数不相同, 那么分数高的排在前面否则, 将姓名字典序小的排在前面bool cmp(Student a, Student b)原创 2021-03-15 09:36:28 · 222 阅读 · 0 评论 -
机试 (数学问题)
目录简单数学PAT (Advanced level) 1012 The Best Rank简单数学PAT (Advanced level) 1012 The Best Rank题目在此原创 2021-03-28 13:30:56 · 471 阅读 · 0 评论 -
搜索专题 (DFS, BFS)
目录DFSBFSDFS可以参考下回溯法 (带限界函数的深度优先搜索)0-1 背包问题void DFS(int index, int sumW, int sumC) { if (index == n) { return; // 已经完成对 n 件物品的选择 } DFS(index + 1, sumW, sumC); // 不选第 index 件物品 // 只有加入第 index 件物品后未超过容量 V, 才能继续 if (sumW + w[index] <= Y) {原创 2021-04-12 16:17:18 · 127 阅读 · 0 评论 -
数据结构专题 (链表、树、二叉查找树、AVL 树、并查集、堆)
目录链表问题PAT (Advanced Level) 1032 SharingPAT (Advanced Level) 1052 Linked List SortingPAT (Advanced Level) 1074 Reversing Linked List链表问题静态链表通用解题步骤(1) 定义静态链表:struct Node { int address; // 结点地址 typenarne data; // 数据域 int next; // 指针域 XXX; // 结原创 2021-05-03 17:00:58 · 145 阅读 · 1 评论 -
机试: 动态规划
动态规划原创 2021-07-09 09:55:12 · 219 阅读 · 1 评论 -
机试: 图 (图的存储、图的遍历、最短路径、最小生成树、拓扑排序、关键路径)
参考《算法笔记》目录图的存储图的遍历图的存储邻接矩阵用一个二维数组表示,在顶点数小于 1000 时使用 (否则空间开销太大)邻接表每个顶点的出边可以偷懒用 vector 表示 (不用链表),因此如果邻接表只存放每条边的终点编号,而不存放边权, 则 vector 中的元素类型可以直接定义为 int 型:vector<int> Adj[N];如果需要同时存放边的终点编号和边权, 那么可以建立结构体 Node, 用来存放每条边的终点编号和边权struct Nod.原创 2021-05-13 20:36:18 · 284 阅读 · 0 评论 -
机试: 字符串专题
参考《算法笔记》目录KMP 算法`next` 数组KMP 算法KMP 算法字符串的匹配问题如果给出两个字符串 text 和 pattern, 需要判断字符串 pattern 是否是字符串 text 的子串。 般把字符串 text 称为文本串,而把字符串 pattern 称为模式串例如,给定文本串 text="caniwaitforyourheart", 那么模式串 pattem="wait" 是它的子串如果暴力求解,时间复杂度为 O(mn)O(mn)O(mn),其中 nnn 和 mm.原创 2021-06-24 16:18:47 · 180 阅读 · 0 评论 -
机试: 查询序列元素第 K 大
查询序列元素第 K 大原创 2021-06-24 16:18:53 · 120 阅读 · 1 评论