自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(106)
  • 资源 (1)
  • 收藏
  • 关注

原创 Leetcode 二叉树的最大深度

给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回它的最大深度 3 。求最大深度只需要递归左右子树,求左右子树的最大高度,然后在此基础上+1即可。...

2018-08-31 21:57:33 139

原创 Leetcode 验证二叉搜索树

给定一个二叉树,判断其是否是一个有效的二叉搜索树。假设一个二叉搜索树具有如下特征:节点的左子树只包含小于当前节点的数。 节点的右子树只包含大于当前节点的数。 所有左子树和右子树自身必须也是二叉搜索树。示例 1:输入: 2 / \ 1 3输出: true示例 2:输入: 5 / \ 1 4  / \  3 ...

2018-08-31 21:52:45 217 1

原创 连通分量 Aizu - ALDS1_11_D Connected Components dfs或bfs或并查集

Write a program which reads relations in a SNS (Social Network Service), and judges that given pairs of users are reachable each other through the network.InputIn the first line, two integer nn an...

2018-08-31 18:30:47 308

原创 C++ set容器(附代码)

set内部其实是一颗二叉搜索树。其基本函数如下:size():返回set的集合数。clear():清空set。 O(n)begin():返回指向set开头的迭代器。end():返回指向set末尾的迭代器。 insert(key):向set中插入元素key。O(log(n))  erase(key):删除含有key的元素。 O(log(n))find(key): 查找与k...

2018-08-31 17:18:31 692

原创 二叉搜索树的插入 (附例题)

 二叉搜索树的插入操作,其实先从根节点开始从上往下比较,如果比节点的值小,就去与左子树比较,反之,去有子树比较。直到节点为空为止,说明找到插入的位置了。例题为Aizu - ALDS1_8_A  Binary Search Tree ISearch trees are data structures that support dynamic set operations includin...

2018-08-31 12:09:28 1124

原创 Aizu - ALDS1_7_d Reconstruction of a Tree 树的重建

Write a program which reads two sequences of nodes obtained by the preorder tree walk and the inorder tree walk on a binary tree respectively, and prints a sequence of the nodes obtained by the postor...

2018-08-31 10:37:09 218

原创 Aizu - ALDS1_7_C Tree Walk 树的三种遍历

Binary trees are defined recursively. A binary tree T is a structure defined on a finite set of nodes that eithercontains no nodes, or is composed of three disjoint sets of nodes: - a root node. ...

2018-08-30 17:45:59 306

原创 Aizu - ALDS1_7_B Binary Trees 二叉树的表达

Binary TreeA rooted binary tree is a tree with a root node in which every node has at most two children.Your task is to write a program which reads a rooted binary tree T and prints the following ...

2018-08-30 16:04:27 272

原创 Aizu - ALDS1_7_A Rooted Trees 有根树的表达

A graph G = (V, E) is a data structure where V is a finite set of vertices and E is a binary relation on V represented by a set of edges. Fig. 1 illustrates an example of a graph (or graphs).Fig. 1...

2018-08-30 12:38:05 214

原创 Aizu - ALDS1_5_B Merge Sort 归并排序

Write a program of a Merge Sort algorithm implemented by the following pseudocode. You should also report the number of comparisons in the Merge function.Merge(A, left, mid, right) n1 = mid - lef...

2018-08-30 10:35:32 215

原创 Aizu - ALDS1_5_A Exhaustive Search 穷竭搜索

Write a program which reads a sequence A of n elements and an integer M, and outputs "yes" if you can make M by adding elements in A, otherwise "no". You can use an element only once.You are given t...

2018-08-29 18:08:30 367

原创 Aizu - ALDS1_4_C Dictionary 散列法搜索

Search IIIYour task is to write a program of a simple dictionary which implements the following instructions:insert str: insert a string str in to the dictionary find str: if the distionary conta...

2018-08-29 17:16:02 318

原创 PTA 数据结构与算法题目集(中文)7-38 寻找大富翁(25 分)快排或堆排序

胡润研究院的调查显示,截至2017年底,中国个人资产超过1亿元的高净值人群达15万人。假设给出N个人的个人资产值,请快速找出资产排前M位的大富翁。输入格式:输入首先给出两个正整数N(≤10​6​​)和M(≤10),其中N为总人数,M为需要找出的大富翁数;接下来一行给出N个人的个人资产值,以百万元为单位,为不超过长整型范围的整数。数字间以空格分隔。输出格式:在一行内按非递增顺序输出资...

2018-08-29 14:31:47 2194 1

原创 PTA 数据结构与算法题目集(中文)7-37 模拟EXCEL排序(25 分)排序

Excel可以对一组纪录按任意指定列排序。现请编写程序实现类似功能。输入格式:输入的第一行包含两个正整数N(≤10​5​​) 和C,其中N是纪录的条数,C是指定排序的列号。之后有 N行,每行包含一条学生纪录。每条学生纪录由学号(6位数字,保证没有重复的学号)、姓名(不超过8位且不包含空格的字符串)、成绩([0, 100]内的整数)组成,相邻属性用1个空格隔开。输出格式:在N行中输出...

2018-08-29 11:41:37 2713 2

原创 PTA 数据结构与算法题目集(中文)7-33 地下迷宫探索(30 分)dfs

地道战是在抗日战争时期,在华北平原上抗日军民利用地道打击日本侵略者的作战方式。地道网是房连房、街连街、村连村的地下工事,如下图所示。我们在回顾前辈们艰苦卓绝的战争生活的同时,真心钦佩他们的聪明才智。在现在和平发展的年代,对多数人来说,探索地下通道或许只是一种娱乐或者益智的游戏。本实验案例以探索地下通道迷宫作为内容。假设有一个地下通道迷宫,它的通道都是直的,而通道所有交叉点(包括通道的端...

2018-08-29 10:50:04 401

原创 PTA 数据结构与算法题目集(中文) 7-35 城市间紧急救援(25 分) 迪杰斯特拉算法

7-35 城市间紧急救援(25 分)作为一个城市的应急救援队伍的负责人,你有一张特殊的全国地图。在地图上显示有多个分散的城市和一些连接城市的快速道路。每个城市的救援队数量和每一条连接两个城市的快速道路长度都标在地图上。当其他城市有紧急求助电话给你的时候,你的任务是带领你的救援队尽快赶往事发地,同时,一路上召集尽可能多的救援队。输入格式:输入第一行给出4个正整数N、M、S、D,其中N(2...

2018-08-28 21:53:02 513

原创 Aizu - ALDS1_2_D Shell Sort 希尔排序

Shell Sort is a generalization of Insertion Sort to arrange a list of nn elements AA .1 insertionSort(A, n, g)2 for i = g to n-13 v = A[i]4 j = i - g5 while j &...

2018-08-28 17:36:07 382

原创 Aizu - ALDS1_2_B Selection Sort 选择排序

Write a program of the Selection Sort algorithm which sorts a sequence A in ascending order. The algorithm should be based on the following pseudocode:SelectionSort(A)1 for i = 0 to A.length-12 ...

2018-08-28 12:38:37 241

原创 Aizu - ALDS1_2_A Bubble Sort 冒泡排序

Write a program of the Bubble Sort algorithm which sorts a sequence A in ascending order. The algorithm should be based on the following pseudocode:BubbleSort(A)1 for i = 0 to A.length-12 for...

2018-08-28 12:18:33 186

原创 Aizu - ALDS1_1_A Insertion Sort 插入排序

Write a program of the Insertion Sort algorithm which sorts a sequence A in ascending order. The algorithm should be based on the following pseudocode:for i = 1 to A.length-1 key = A[i] /* ...

2018-08-28 12:01:45 331

原创 Leetcode 初级算法 删除链表中的节点

请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除的节点。现有一个链表 -- head = [4,5,1,9],它可以表示为: 4 -> 5 -> 1 -> 9示例 1:输入: head = [4,5,1,9], node = 5输出: [4,1,9]解释: 给定你链表中值为 5 的第二个节点,那么在调用了你的函数之...

2018-08-28 10:27:18 131

原创 PTA 数据结构与算法题目集(中文) 7-42 整型关键字的散列映射(25 分) 散列表+线性探测法

给定一系列整型关键字和素数P,用除留余数法定义的散列函数将关键字映射到长度为P的散列表中。用线性探测法解决冲突。输入格式:输入第一行首先给出两个正整数N(≤1000)和P(≥N的最小素数),分别为待插入的关键字总数、以及散列表的长度。第二行给出N个整型关键字。数字间以空格分隔。输出格式:在一行内输出每个整型关键字在散列表中的位置。数字间以空格分隔,但行末尾不得有多余空格。输入样...

2018-08-23 17:09:49 2060

原创 PTA 数据结构与算法题目集(中文)7-45 航空公司VIP客户查询(25 分)map

不少航空公司都会提供优惠的会员服务,当某顾客飞行里程累积达到一定数量后,可以使用里程积分直接兑换奖励机票或奖励升舱等服务。现给定某航空公司全体会员的飞行记录,要求实现根据身份证号码快速查询会员里程积分的功能。输入格式:输入首先给出两个正整数N(≤10​5​​)和K(≤500)。其中K是最低里程,即为照顾乘坐短程航班的会员,航空公司还会将航程低于K公里的航班也按K公里累积。随后N行,每行给出...

2018-08-23 01:19:39 2426 8

原创 PTA 数据结构与算法题目集(中文)7-26 Windows消息队列(25 分) 最小堆

消息队列是Windows系统的基础。对于每个进程,系统维护一个消息队列。如果在进程中有特定事件发生,如点击鼠标、文字改变等,系统将把这个消息加到队列当中。同时,如果队列不是空的,这一进程循环地从队列中按照优先级获取消息。请注意优先级值低意味着优先级高。请编辑程序模拟消息队列,将消息加到队列中以及从队列中获取消息。输入格式:输入首先给出正整数N(≤10​5​​),随后N行,每行给出一个指令—...

2018-08-23 01:00:09 355

原创 PTA 数据结构与算法题目集(中文)7-24 树种统计(25 分) map散列表

随着卫星成像技术的应用,自然资源研究机构可以识别每一棵树的种类。请编写程序帮助研究人员统计每种树的数量,计算每种树占总数的百分比。输入格式:输入首先给出正整数N(≤10​5​​),随后N行,每行给出卫星观测到的一棵树的种类名称。种类名称由不超过30个英文字母和空格组成(大小写不区分)。输出格式:按字典序递增输出各种树的种类名称及其所占总数的百分比,其间以空格分隔,保留小数点后4位。...

2018-08-22 23:46:52 253

原创 PTA 数据结构与算法题目集(中文) 7-29 修理牧场(25 分)最小堆

农夫要修理牧场的一段栅栏,他测量了栅栏,发现需要N块木头,每块木头长度为整数L​i​​个长度单位,于是他购买了一条很长的、能锯成N块的木头,即该木头的长度是L​i​​的总和。但是农夫自己没有锯子,请人锯木的酬金跟这段木头的长度成正比。为简单起见,不妨就设酬金等于所锯木头的长度。例如,要将长度为20的木头锯成长度为8、7和5的三段,第一次锯木头花费20,将木头锯成12和8;第二次锯木头花费12,...

2018-08-22 23:17:54 842

原创 PTA 数据结构与算法题目集(中文)7-47 打印选课学生名单(25 分)vector容器

假设全校有最多40000名学生和最多2500门课程。现给出每个学生的选课清单,要求输出每门课的选课学生名单。输入格式:输入的第一行是两个正整数:N(≤40000),为全校学生总数;K(≤2500),为总课程数。此后N行,每行包括一个学生姓名(3个大写英文字母+1位数字)、一个正整数C(≤20)代表该生所选的课程门数、随后是C个课程编号。简单起见,课程从1到K编号。输出格式:顺序输出...

2018-08-22 20:19:05 581

原创 PTA 数据结构与算法题目集(中文) 7-49 打印学生选课清单(25 分)散列+vector

假设全校有最多40000名学生和最多2500门课程。现给出每门课的选课学生名单,要求输出每个前来查询的学生的选课清单。输入格式:输入的第一行是两个正整数:N(≤40000),为前来查询课表的学生总数;K(≤2500),为总课程数。此后顺序给出课程1到K的选课学生名单。格式为:对每一门课,首先在一行中输出课程编号(简单起见,课程从1到K编号)和选课学生总数(之间用空格分隔),之后在第二行给出...

2018-08-22 18:21:55 649

原创 PTA 数据结构与算法题目集(中文) 7-50 畅通工程之局部最小花费问题(35 分)

某地区经过对城镇交通状况的调查,得到现有城镇间快速道路的统计数据,并提出“畅通工程”的目标:使整个地区任何两个城镇间都可以实现快速交通(但不一定有直接的快速道路相连,只要互相间接通过快速路可达即可)。现得到城镇道路统计表,表中列出了任意两城镇间修建快速路的费用,以及该道路是否已经修通的状态。现请你编写程序,计算出全地区畅通需要的最低成本。输入格式:输入的第一行给出村庄数目N (1≤N≤10...

2018-08-22 16:50:27 1282 5

原创 PTA 数据结构与算法题目集(中文) 7-15 QQ帐户的申请与登陆(25 分)map容器应用

实现QQ新帐户申请和老帐户登陆的简化版功能。最大挑战是:据说现在的QQ号码已经有10位数了。输入格式:输入首先给出一个正整数N(≤10​5​​),随后给出N行指令。每行指令的格式为:“命令符(空格)QQ号码(空格)密码”。其中命令符为“N”(代表New)时表示要新申请一个QQ号,后面是新帐户的号码和密码;命令符为“L”(代表Login)时表示是老帐户登陆,后面是登陆信息。QQ号码为一个不超...

2018-08-22 15:54:39 371

原创 PTA 数据结构与算法题目集(中文) 7-14 电话聊天狂人(25 分)map实现

7-14 电话聊天狂人(25 分)给定大量手机用户通话记录,找出其中通话次数最多的聊天狂人。输入格式:输入首先给出正整数N(≤10​5​​),为通话记录条数。随后N行,每行给出一条通话记录。简单起见,这里只列出拨出方和接收方的11位数字构成的手机号码,其中以空格分隔。输出格式:在一行中给出聊天狂人的手机号码及其通话次数,其间以空格分隔。如果这样的人不唯一,则输出狂人中最小的号码...

2018-08-22 15:19:38 303

原创 POJ 1716 Intervals 差分约束

You are given n closed, integer intervals [ai, bi] and n integers c1, ..., cn.Write a program that:reads the number of intervals, their end points and integers c1, ..., cn from the standard input,c...

2018-08-22 12:11:37 153

原创 POJ 3169 Layout 差分约束+spfa

DescriptionLike everyone else, cows like to stand close to their friends when queuing for feed. FJ has N (2 <= N <= 1,000) cows numbered 1..N standing along a straight line waiting for feed. T...

2018-08-22 11:30:26 164

原创 AOJ 2249 Road Construction 迪杰斯特拉算法

Problem H:King Mercer is the king of ACM kingdom. There are one capital and some cities in his kingdom. Amazingly, there are no roads in the kingdom now. Recently, he planned to construct roads betw...

2018-08-21 23:53:05 270

原创 HDU 6349 三原色图 最小生成树

度度熊有一张 nn 个点 mm 条边的无向图,所有点按照 1,2,⋯,n1,2,⋯,n 标号,每条边有一个正整数权值以及一种色光三原色红、绿、蓝之一的颜色。现在度度熊想选出恰好 kk 条边,满足只用这 kk 条边之中的红色边和绿色边就能使 nn 个点之间两两连通,或者只用这 kk 条边之中的蓝色边和绿色边就能使 nn 个点之间两两连通,这里两个点连通是指从一个点出发沿着边可以走到另一个点。对于...

2018-08-21 23:33:52 294

原创 POJ 2395 Out of Hay 最小生成树

The cows have run out of hay, a horrible event that must be remedied immediately. Bessie intends to visit the other farms to survey their hay situation. There are N (2 <= N <= 2,000) farms (numb...

2018-08-21 23:21:06 121

原创 AOJ 2224 Save your cats

Problem C: Nicholas Y. Alford was a cat lover. He had a garden in a village and kept many cats in his garden. The cats were so cute that people in the village also loved them.One day, an evil witc...

2018-08-21 23:11:19 176

原创 单源最短路算法spfa 代码实现

 代码如下: #include <cstdio>#include <cstring>#include <algorithm>#include <iostream>#include <queue>using namespace std;const int maxn=1005;const int INF=0x3f3f3f...

2018-08-21 15:50:39 200

原创 HDU 2094 产生冠军 拓扑排序

 Problem Description有一群人,打乒乓球比赛,两两捉对撕杀,每两个人之间最多打一场比赛。球赛的规则如下:如果A打败了B,B又打败了C,而A与C之间没有进行过比赛,那么就认定,A一定能打败C。如果A打败了B,B又打败了C,而且,C又打败了A,那么A、B、C三者都不可能成为冠军。根据这个规则,无需循环较量,或许就能确定冠军。你的任务就是面对一群比赛选手,在经过了若干场...

2018-08-19 23:38:24 144

原创 拓扑排序 bfs实现

 代码如下:#include <cstdio>#include <cstring>#include <algorithm>#include <iostream>#include <vector>#include <queue>using namespace std;const int maxn=505;v...

2018-08-19 20:10:31 406

numpy-1.14.5+mkl-cp37-cp37m-win_amd64.whl

numpy-1.14.5+mkl-cp37-cp37m-win_amd64.whl 资源,适用于 python3.7 win64位系统

2019-09-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除