数据结构
文章平均质量分 70
佐鼬Jun
这个作者很懒,什么都没留下…
展开
-
二分练习
二分练习Description给你一个序列,然后给你m个元素,让你从序列中找出与每个元素最接近的数字输出来,如果有两个就输出两个。Input多组输入,第一行给你两个数n(0 < n < 10000000),m(0 < m < n),接下来是数列的n个数,然后再输入m个元素,让你找出最接近每个元素的值。如果有两个,按从小到大输出。Output这m个数分别输出最接近每个元素的值,组与组之间输出一个空行。SampleInput8 41 2 3 4 5 6 8 114原创 2021-05-17 17:53:41 · 193 阅读 · 2 评论 -
数据结构实验之查找三:树的种类统计(map的应用)
数据结构实验之查找三:树的种类统计思路: 先提前把大写字母转换成小写,在都存到map中,然后按照字典序输出,比例就是该字符串的数量/n*100%记录一下有关map的应用,算是记个笔记。#include<iostream>#include<cstring>#include<algorithm>#include<map>using namespace std;const int N=1e6+10;map<string,int> m;原创 2021-05-12 21:21:49 · 171 阅读 · 4 评论 -
Binary Trees(挑战程序设计竞赛题目)
Binary TreeA 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 information for each node u of T:node ID of uparent of usiblin原创 2021-04-15 00:07:01 · 209 阅读 · 0 评论 -
图结构练习——最短路径 (Dijkstra算法版)
Dijkstra算法定义:迪克斯特拉算法,是从一个顶点到其余各顶点的最短路径算法,解决的是有权图中最短路径问题。迪杰斯特拉算法主要特点是从起始点开始,采用贪心算法的策略,每次遍历到始点距离最近且未访问过的顶点的邻接节点,直到扩展到终点为止。这里解决最短路径问题需要先了解Dijkstra算法,所以这里先把个人对于这个算法的理解附上,再解决最短路问题。以这个图为例,从1号走到7号的最短路径明显是从1到4再到7,这条路径的权值最小。从代码角度就要利用Dijkstra算法来解释。因为是从1号开始走,所以原创 2021-02-20 11:05:32 · 3566 阅读 · 4 评论 -
图的深度优先遍历和广度优先遍历
图的深度优先遍历和广度优先遍历在数据结构中学习了一下图的深度优先遍历和广度优先遍历,发这个博客来复习一下,并总结一下这种方法。 以这个图(把蓝色圆框当作景区,橙色框里的数字为探索的顺序)(遍历时,先遍历节点编号小的)为例,先讲一下深度优先遍历,如果从1号景区开始遍历,游览完1号,开始挑选一条支路。挑2号景区,游览完后,挑通往3号的支路,深入3号景区,再深入6号景区.此时,发现走不动了,走到头了,于是退回3号景区,发现没别的支路(指除了走过的),再退回2号,此时发现有新的支路,探索4号景区。这时,又发原创 2021-02-14 23:16:15 · 2672 阅读 · 4 评论