- 博客(73)
- 收藏
- 关注
原创 LeetCode做题记录
LeetCode随笔LeetCode做题记录由于去年毕业写论文,后来参加工作,导致好久没有更新博客了,前段时间看到一个游客评论说让我加油坚持更新,于是打算开一个文章,来记录一下工作以后下班时间偶尔的做题记录。20题 有效的括号题目描述入职以后基本都转为写C语言了,所以在这里也改用C语言来做题,不过思路方法都是相通的。bool isValid(char * s){ char stack[5001]; int top=0; while(*s!='\0') {
2021-01-30 22:33:21 324 2
原创 【PAT甲级】PAT (Advance Level) 训练记录【纪念19年9月8号PAT甲级满分~】
为了继续增加自己的编程与算法能力,继续刷PAT甲级的考试题。由于最近在公司实习,还有公司的考试题要做,因此记录甲级的做题记录可能会比较慢,只能回家的时候做一会,但是贵在坚持。本文是一个归档文章,将所有题目的具体链接与部分信息记录在这里本文持续更新中(to be continued…)博客中涉及的代码均存储在我的GitHub仓库中,如有需要可以直接点击链接查看或下载:PAT甲级代码(上传代码...
2019-07-13 15:47:47 1005 1
原创 《剑指offer》——python实现【归档】
为了方便查询归档,对《剑指offer》做题记录做一个索引文章:题目:二维数组中的查找替换空格从尾到头打印链表重建二叉树用两个栈实现队列旋转数组的最小数字斐波那契数列跳台阶变态跳台阶矩形覆盖二进制中1的个数数值的整数次方调整数组顺序使奇数位于偶数前面链表中倒数第k个结点反转链表合并两个排序的链表树的子结构二叉树的镜像顺时针打印矩阵包含min函数的栈栈的...
2019-05-12 14:17:59 273
原创 关于学习中国大学MOOC国家精品课程《计算机程序设计C++》的学习记录与小结
为了记录在中国大学MOOC中《计算机程序设计C++》的学习成果,特将基础练习与课程测试的代码写入博客,以便日后查阅方便,也供广大编程学习者借鉴交流,写出更加好的程序。~~~欢迎评论收藏点赞~~~
2018-12-05 21:51:55 3503
原创 【堆】C++下定义通用的堆模板
程序员在写程序时,最常遇到的就是排序问题对于N个待排序的数据结构,使用冒泡插入等排序方法,时间复杂度为O(N2),往往不能满足要求,因此需要使用更加高效的排序方法(归并,二分等)将时间复杂度降低为O(logN)因此,本文在这里介绍堆排序的方法,与堆的通用数据结构代码,以供参考部分基础知识什么是堆?定义:堆是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。要点1:堆可以类比为完全二叉树要点2:父亲节点的键值或索引总是小于(或者大于)左.
2021-03-07 15:16:53 981
原创 【PAT甲级】个人做题记录之:1018 Public Bike Management (30 分)
PAT甲级圆满考完了,这次也考了一个相对不错的成绩,之后可能就很少刷PAT题库了,慢慢将之前刷题的过程补充记录上来吧1018 Public Bike Management题目描述There is a public bike service in Hangzhou City which provides great convenience to the tourists from all ov...
2019-09-09 10:48:39 412
原创 【PAT甲级】个人做题记录之:1017 Queueing at Bank (25 分)
由于之前审核原创,所以好像相似的题目标题都要进行人工的原创审核,因此试着改一下标题,看能不能让机器审核通过由于最近在公司实习,所以没法即使更新pat甲级的做题训练,马上九月份就要考试了,也不知道这次训练这么少能考个什么成绩,总之,加油!1017 Queueing at Bank题目描述:Suppose a bank has K windows open for service. Th...
2019-08-15 23:49:33 503
原创 【PAT甲级】1016 Phone Bills (25 分)
1016 Phone Bills题目描述A long-distance telephone company charges its customers by the following rules:Making a long-distance call costs a certain amount per minute, depending on the time of day when t...
2019-08-03 20:00:28 298
原创 【PAT甲级】1015 Reversible Primes (20 分)
1015 Reversible Primes题目描述A reversible prime in any number system is a prime whose “reverse” in that number system is also a prime. For example in the decimal system 73 is a reversible prime because...
2019-08-03 18:59:22 332
原创 【PAT甲级】1014 Waiting in Line (30 分)
1014 Waiting in Line题目描述Suppose a bank has N windows open for service. There is a yellow line in front of the windows which devides the waiting area into two parts. The rules for the customers to wa...
2019-07-31 20:34:01 632
原创 【PAT甲级】1013 Battle Over Cities (25 分)
1013 Battle Over Cities题目描述It is vitally important to have all the cities connected by highways in a war. If a city is occupied by the enemy, all the highways from/toward that city are closed. We mu...
2019-07-22 21:50:16 256
原创 【PAT甲级】1012 The Best Rank (25 分)
1012 The Best Rank题目描述:To evaluate the performance of our first year CS majored students, we consider their grades of three courses only: C - C Programming Language, M - Mathematics (Calculus or Lin...
2019-07-16 23:07:11 203
原创 【PAT甲级】1011 World Cup Betting (20 分)
1011 World Cup Betting题目描述With the 2010 FIFA World Cup running, football fans the world over were becoming increasingly excited as the best players from the best teams doing battles for the World Cu...
2019-07-13 23:59:17 208
原创 【PAT甲级】1010 Radix (25 分)
1010 Radix题目描述Given a pair of positive integers, for example, 6 and 110, can this equation 6 = 110 be true? The answer is yes, if 6 is a decimal number and 110 is a binary number.Now for any pair o...
2019-07-13 15:44:58 947 2
原创 【PAT甲级】1009 Product of Polynomials (25 分)
1009 Product of Polynomials题目描述:This time, you are supposed to find A×B where A and B are two polynomials.Input Specification:Each input file contains one test case. Each case occupies 2 lines, an...
2019-07-12 00:39:24 313
原创 【PAT甲级】1008 Elevator (20 分)
1008 Elevator题目描述:The highest building in our city has only one elevator. A request list is made up with N positive numbers. The numbers denote at which floors the elevator will stop, in specified o...
2019-07-11 23:44:49 273
原创 【PAT甲级】1007 Maximum Subsequence Sum (25 分)
Maximum Subsequence Sum题目描述Given a sequence of K integers { N1 , N2, …, NK }. A continuous subsequence is defined to be { Ni , Ni+1 , …, Nj } where 1≤i≤j≤K. The Maximum Subsequence is the...
2019-07-10 22:46:17 291 2
原创 【PAT甲级】1006 Sign In and Sign Out (25 分)
Sign In and Sign Out题目描述At the beginning of every day, the first person who signs in the computer room will unlock the door, and the last one who signs out will lock the door. Given the records of s...
2019-07-10 20:27:37 282
原创 【PAT甲级】1005 Spell It Right (20 分)
Spell It Right题目描述Given a non-negative integer N, your task is to compute the sum of all the digits of N, and output every digit of the sum in English.Input Specification:Each input file contains ...
2019-07-10 19:34:21 216
原创 【PAT甲级】1004 Counting Leaves (30 分)
1004 Counting Leaves题目描述A family hierarchy is usually presented by a pedigree tree. Your job is to count those family members who have no child.Input Specification:Each input file contains one tes...
2019-07-09 00:17:39 242
原创 【PAT甲级】1003 Emergency (25 分)
1003 Emergency题目描述As an emergency rescue team leader of a city, you are given a special map of your country. The map shows several scattered cities connected by some roads. Amount of rescue teams in...
2019-07-08 21:27:01 203
原创 【PAT甲级】1002 A+B for Polynomials (25 分)
1002 A+B for Polynomials题目描述This time, you are supposed to find A+B where A and B are two polynomials.Input Specification:Each input file contains one test case. Each case occupies 2 lines, and ea...
2019-07-08 16:53:47 180
原创 【PAT甲级】1001 A+B Format (20 分)
1001 A+B Format (20 分)题目描述Calculate a+b and output the sum in standard format – that is, the digits must be separated into groups of three by commas (unless there are less than four digits).Input S...
2019-07-08 16:21:04 273
原创 C++头文件定义类的方法
新手在写C++程序定义类的时候,可能会犯一个错误,就是在main函数文件里定义很多类,一个文件中包含很多函数,这样程序看起来很冗杂。今天总结一下如何在C++中使用头文件来定义一个类,并在另一个文件中进行引用。部分基础知识在一个C++程序中,有两种基础的文件头文件(.h)【应该是head的缩写】源文件(.cpp)【Cplusplus的缩写】头文件中一般是声明类,包括类的成员,方法,还...
2019-06-29 16:52:57 46784 17
原创 《剑指offer》python实现
最近需要抽时间帮老师完成一个项目,所以只能利用一些空闲时间来刷《剑指offer》,速度很慢本文题目:两个链表的第一个公共结点数字在排序数组中出现的次数二叉树的深度平衡二叉树两个链表的第一个公共结点题目描述:输入两个链表,找出它们的第一个公共结点。思路:由于链表一旦产生公共节点,那公共节点之后的两个链表的节点都是相同的(一个节点只能指向一个物理位置),因此将两个链表的所有节点放在两...
2019-06-16 12:43:55 125 1
原创 《剑指offer》python实现
继续进行剑指offer的python实现本文题目:把数组排成最小的数丑数第一个只出现一次的字符数组中的逆序对把数组排成最小的数题目描述输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。思路使用sorted函数对数组进行排序,排序的方法为如果数字a与数字b组成...
2019-06-05 19:20:25 343
原创 《剑指offer》python实现
这段时间事情略多,马上秋招,得赶紧把这些数据结构的习题做完,继续剑指offer的刷题之旅本文题目:字符串的排列数组中出现次数超过一半的数字最小的K个数连续子数组的最大和整数中1出现的次数(从1到n整数中1出现的次数)字符串的排列题目描述输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,b...
2019-06-05 11:40:17 763
原创 中国大学MOOC-陈越、何钦铭-数据结构-2019春期末考试
判断题:1-1若一棵平衡二叉树的所有非叶结点的平衡因子都是0,则其必为完美二叉树。(2分)1-2采用平方探测冲突解决策略(hi(k)=(H(k)+i2 )%11, 注意:不是±i2),将一批散列值均等于2的对象连续插入一个大小为11的散列表中,那么第4个对象一定位于下标为0的位置。 (2分)1-3n!是O(nn)的。 (2分)1-4对N个不同的数据采用冒泡排序进行从大到小的排序,当元素...
2019-05-29 14:05:17 7344
原创 《剑指offer》python实现
继续《剑指offer》的做题之旅,发现闭门造车的学习方法实在是太过慢,还是不断阅读网上各路大神的各种方法,站在巨人的肩膀上的学习效率高【其实是自己的方法太差】本文题目:二叉树中和为某一值的路径复杂链表的复制二叉搜索树与双向链表二叉树中和为某一值的路径题目描述:输入一颗二叉树的跟节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过...
2019-05-12 14:08:07 445
原创 《剑指offer》python实现
好几天没有继续做题,看来是收到一个肯要我的公司的offer以后就懈怠了,题还是要继续刷起来~本文题目:栈的压入、弹出序列从上往下打印二叉树二叉搜索树的后序遍历序列栈的压入、弹出序列题目描述:输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对...
2019-05-11 21:56:54 173
原创 哈利·波特的考试
此题考查有权多源图的最短路的算法对于计算有权多源图的最短路径,有两种实现方法,一种是直接将单源最短路算法调用N遍,二是使用Floyd算法。Floyd算法1,从任意一条单边路径开始。所有两点之间的距离是边的权,如果两点之间没有边相连,则权为无穷大。2,对于每一对顶点 u 和 v,看看是否存在一个顶点 w 使得从 u 到 w 再到 v 比已知的路径更短。如果是更新它。3,把所有顶点作为中间...
2019-05-07 21:55:50 602
原创 《剑指offer》python实现
五一回来,继续做《剑指offer》,写代码使我快乐T_Tpython的很多语法还需要继续熟练,加以理解与掌握本文题目:树的子结构二叉树的镜像顺时针打印矩阵包含min函数的栈树的子结构题目描述输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)class Solution: def HasSubtree(self, p1, p2): ...
2019-05-04 20:15:45 222
原创 《剑指offer》python实现
继续《剑指offer》刷题之旅,前几天面试一些公司的实习岗,说的话都是知识储备还不够,唉,半路出家我也木有办法啊,得想想做做小项目了,然后刷题慢慢刷吧python的相关语法还需要练习二进制中1的个数题目描述输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。反码:原码所有位的数字取反补码:反码加1,对于一个32位的机器,负数的补码表示也可以用原数加上232的二进制数计算...
2019-04-23 16:15:00 149
原创 中国大学MOOC-陈越、何钦铭-数据结构-2019春期中考试
做了《数据结构》MOOC的期中考试,感觉还是有很多知识需要学习,现将考试题目整理如下:判断题:1-1用邻接矩阵法存储图,占用的存储空间数只与图中结点个数有关,而与边数无关。 (3分)1-2所谓“循环队列”是指用单向循环链表或者循环数组表示的队列。 (2分)1-3如果无向图G必须进行两次广度优先搜索才能访问其所有顶点,则G中一定有回路。 (3分)1-4算法可以没有输入,但是必须有输出。 (...
2019-04-20 10:31:29 12460 12
原创 《剑指offer》python实现
继续上周的刷《剑指offer》之旅,本专栏博客依旧使用python实现python的相关语法还需要练习旋转数组的最小数字题目描述把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为...
2019-04-17 09:04:55 257
原创 《剑指offer》python实现
最近想刷一下《剑指offer》,准备使用python语言完成【刚好巩固一下之前学过的python基础语法】刷题的网站是牛客网,牛客的这个《剑指offer》的题库跟LeetCode的提交方式很像,跟之前刷过的PAT的提交方式有一定的差别刚开始使用python,还需要很多学习的地方暂时将题目与提交的代码记录在下:二维数组中的查找题目描述:在一个二维数组中(每个一维数组的长度相同),每...
2019-04-13 21:09:20 324
原创 列出连通集
此题考查图的构建(使用邻接矩阵构建或者邻接表构建)与遍历,使用深度优先遍历与广度优先遍历的两种遍历方法浅谈深度优先与广度优先:深度优先(DFS)遍历图的方法是,从图中某顶点v出发:访问顶点v;依次从v的未被访问的邻接点出发,对图进行深度优先遍历;直至图中和v有路径相通的顶点都被访问;对于深度优先算法,需要使用递归进行,其伪代码如下:void DFS(起始节点 V){ 将起始...
2019-04-11 21:01:01 2595 3
原创 C语言中的malloc申请内存失败的原因
今天在写C语言的时候,发现一个malloc函数的返回值总是NULL,无法申请内存,导致异常:读取位置时候发生访问冲突。查询了很多解决方法,在此归纳一下malloc函数无法分配内存的原因:内存不足(个人认为目前的代码量对比计算机的内存性能还不够出现这样的错误)前面程序使用malloc函数时候发生了内存访问越界,即前面的malloc相关函数调用出现问题,导致接下来的malloc函数分配内存时...
2019-04-11 16:26:40 15893 2
原创 最小堆的路径
本题完成最小堆的建立将一系列给定数字插入一个初始为空的小顶堆H[]。随后对任意给定的下标i,打印从H[i]到根结点的路径。输入格式:每组测试第1行包含2个正整数N和M(≤1000),分别是插入元素的个数、以及需要打印的路径条数。下一行给出区间[-10000, 10000]内的N个要被插入一个初始为空的小顶堆的整数。最后一行给出M个下标。输出格式:对输入中给出的每个下标i,在一行中输出从H...
2019-04-03 20:04:28 270
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人