自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 选择题2--中国大学MOOC-陈越、何钦铭-数据结构-2020夏期末考试

2-12 对一组数据{ 2,12,16,88,5,10 }进行排序,若前三趟排序结果如下: 第一趟排序结果:2,12,16,5,10,88 第二趟排序结果:2,12,5,10,16,88 第三趟排序结果:2,5,10,12,16,88 则采用的排序方法可能是:2-13 设一个栈的输入序列是1、2、3、4、5,则下列序列中,是栈的合法输出序列的是?(4分)2-14给定有权无向图的邻接矩阵如下,其最小生成树的总权重是:2-15在并查集问题中,已知集合元素0~8所以对应的父结点编号值分别是{ 1, -

2020-08-29 15:35:47 1801

原创 选择题1--中国大学MOOC-陈越、何钦铭-数据结构-2020夏期末考试

2-1 要判断一个整数N(>10)是否素数,我们需要检查3到√​N之间是否存在奇数可以整除N。则这个算法的时间复杂度是:(2分)2-2数据结构中Dijkstra算法用来解决哪个问题?(2分)2-3 将 {28, 15, 42, 18, 22, 5, 40} 逐个按顺序插入到初始为空的最小堆(小根堆)中。则该树的前序遍历结果为:2-4给定初始待排序列{ 15,9,7,8,20,-1,4 }。如果希尔排序第一趟结束后得到序列为{ 15,-1,4,8,20,9,7 },则该趟增量为:2-5下

2020-08-29 15:23:44 2150

原创 判断题--中国大学MOOC-陈越、何钦铭-数据结构-2020夏期末考试

1-1若一棵平衡二叉树的所有非叶结点的平衡因子都是0,则其必为完美二叉树。(2分)1-2 N​2logN和NlogN​2具有相同的增长速度。(2分)1-3若用平方探测法解决冲突,则插入新元素时,若散列表容量为质数,插入就一定可以成功。(2分)1-4对N个不同的数据采用冒泡排序进行从大到小的排序,当元素基本有序时交换元素次数肯定最多。(2分)1-5 在任一有向图中,所有顶点的入度之和等于所有顶点的出度之和。1-5 TFFFT...

2020-08-29 15:06:06 2239

原创 中国大学MOOC-陈越、何钦铭-数据结构-2020夏期末考试

5-2下列代码的功能是对一个给定的图G执行拓扑排序,其中TopNum[]从1开始记录拓扑序。void Topsort( Graph G ){ Queue Q; Vertex V, W; NodePtr ptr; int counter = 0; Q = CreateEmptyQueue(NumVertex); for ( V=0; V<G->NumV; V++ ) if ( Indegree[V] == 0 ) Enque

2020-08-29 10:27:35 4127

原创 程序填空题--中国大学MOOC-陈越、何钦铭-数据结构-2020夏期末考试

5-1下列代码的功能是将一列元素{ r[1] … r[n] }按其键值 key 的非递减顺序排序。普通选择排序是每次仅将一个待排序列的最小元放到正确的位置上,而这个另类的选择排序是每次从待排序列中同时找到最小元和最大元,把它们放到最终的正确位置上。void sort( list r[], int n ) { int i, j, mini, maxi; for (i=1; i<n-i+1; i++) { mini = maxi = i; for( j=i+

2020-08-29 10:24:17 1842

原创 7-1 还原二叉树 (8分)--中国大学MOOC-陈越、何钦铭-数据结构-2020夏期末考试

中国大学MOOC-陈越、何钦铭-数据结构-2020夏期末考试给定一棵二叉树的先序遍历序列和中序遍历序列,要求计算该二叉树的高度。输入格式:输入首先给出正整数N(≤50),为树中结点总数。下面两行先后给出先序和中序遍历序列,均是长度为N的不包含重复英文字母(区别大小写)的字符串。输出格式:输出为一个整数,即该二叉树的高度。输入样例:9ABDFGHIECFDHGIBEAC输出样例:5使用DEV C++写的代码如下#include <stdio.h>#include &

2020-08-29 10:21:23 283

原创 python期末测验: 课程水平综合测验 (第10周)-无空隙回声输出/文件关键行数/字典翻转输出/《沉默的羔羊》之最多单词

无空隙回声输出描述获得用户输入,去掉其中全部空格,将其他字符按收入顺序打印输出。 输入 输出示例 1 Alice + Bob Alice+Bobs = input()s = s.replace(' ', '')print(s)文件关键行数描述关键行指一个文件中包含的不重复行。关键行数指一个文件中包含的不重复行的数量。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬

2020-08-20 07:52:02 1703

原创 堆排序--C语言

堆排序(英语:Heapsort)是指利用堆这种数据结构所设计的一种排序算法。堆是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。堆中定义以下几种操作:1.最大堆调整(Max Heapify):将堆的末端子节点作调整,使得子节点永远小于父节点2.创建最大堆(Build Max Heap):将堆中的所有数据重新排序3.堆排序(HeapSort):移除位在第一个数据的根节点,并做最大堆调整的递归运算利用C语言写的堆排序的算法如下:平均时间复杂度为O(

2020-08-14 11:31:44 194

原创 希尔排序--C语言

希尔排序(Shell’s Sort)是插入排序的一种又称“缩小增量排序”(Diminishing Increment Sort),是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。基本思路是先取一个小于n的整数d1作为第一个增量,把文件的全部记录分组。所有距离为d1的倍数的记录放在同一个组中。先在各组内进行直接插入排序;然后,取第二个增量d2,直至增量为1;利用C语言写的希尔排序的算法如下:平均时间复杂度为O(N**d),最坏时间复杂度为O(NN),稳定性为不稳定;#include

2020-08-14 10:23:44 186

原创 插入排序--C语言

插入排序,一般也被称为直接插入排序。对于少量元素的排序,它是一个有效的算法。插入排序的工作方式像许多人排序一手扑克牌,是指在待排序的元素中,假设前面n-1(其中n>=2)个数已经是排好顺序的,现将第n个数插到前面已经排好的序列中,然后找到合适自己的位置,使得插入第n个数的这个序列也是排好顺序的。利用C语言写的插入排序的算法如下:平均时间复杂度为O(NN),最坏时间复杂度为O(NN),稳定性为稳定;#include <stdio.h>void Insertion_sort(int

2020-08-13 20:37:44 241

原创 冒泡排序--C语言

冒泡排序(Bubble Sort)是一种计算机科学领域的较简单的排序算法。它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。利用C语言写的选择排序的算法如下:平均时间复杂度为O(NN),最坏时间复杂度为O(NN),稳定性为稳定;#include <stdio.h>#define maxsize 100001//数量太多无法计算,空间不足typ

2020-08-13 20:22:26 467

原创 选择排序—C语言

利用C语言写的选择排序的算法如下:平均时间复杂度为O(NN),最坏时间复杂度为O(NN),稳定性为不稳定;#include <stdio.h>void selectSort(int arr[],int N);int main (void){ int i; int A[10] = {1,7,5,3,8,2,9,4,6,0}; selectSort(A,10); for(i = 0;i <10 ; i++) { printf("%d ",A[i]); } ret

2020-08-13 20:04:33 115

原创 快速排序&& 数据结构

#include <stdio.h>//函数声明 void Insertion_sort(int a[],int N);//插入排序 void swap(int * a,int * b);//交换数组两位元素的位置 int Median(int a[],int Left,int Right);//将基准放到倒数第二的位置,并返回基准的值 void Qsort(int a[],int Left,int Right);//快速排序主函数 void QuickSort( int a[],

2020-08-12 17:21:48 99

原创 英文字符的鲁棒输入 && 数字的鲁棒输入

描述获得用户的任何可能输入,将其中的英文字符进行打印输出,程序不出现错误 输入 输出示例 *&^123abc0e abcepython的程序如下:alpha = []for i in range(26): alpha.append(chr(ord('a') + i))#将26个小写字母添加到列表中 alpha.append(chr(ord('A') + i))#将26个大写字母添加到列表中s = input()for c in s:#逐个遍历

2020-08-12 13:16:13 719

原创 CSV格式清洗与转换

描述附件是一个CSV格式文件,提取数据进行如下格式转换:‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬(1)按行进行倒序排列;‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬(2)每行数据倒序排列;‪‬‪‬‪‬‪‬‪

2020-08-04 21:19:23 1217

原创 04-树4 是否同一棵二叉搜索树

给定一个插入序列就可以唯一确定一棵二叉搜索树。然而,一棵给定的二叉搜索树却可以由多种不同的插入序列得到。例如分别按照序列{2, 1, 3}和{2, 3, 1}插入初始为空的二叉搜索树,都得到一样的结果。于是对于输入的各种插入序列,你需要判断它们是否能生成一样的二叉搜索树。输入格式:输入包含若干组测试数据。每组数据的第1行给出两个正整数N (≤10)和L,分别是每个序列插入元素的个数和需要检查的序列个数。第2行给出N个以空格分隔的正整数,作为初始插入序列。最后L行,每行给出N个插入的元素,属于L个需要检查

2020-07-30 12:54:24 113

原创 06-图2 Saving James Bond - Easy Version

This time let us consider the situation in the movie “Live and Let Die” in which James Bond, the world’s most famous spy, was captured by a group of drug dealers. He was sent to a small piece of land at the center of a lake filled with crocodiles. There he

2020-07-27 22:04:14 110

原创 06-图1 列出连通集--数据结构

给定一个有N个顶点和E条边的无向图,请用DFS和BFS分别列出其所有的连通集。假设顶点从0到N−1编号。进行搜索时,假设我们总是从编号最小的顶点出发,按编号递增的顺序访问邻接点。输入格式:输入第1行给出2个整数N(0<N≤10)和E,分别是图的顶点数和边数。随后E行,每行给出一条边的两个端点。每行中的数字之间用1空格分隔。输出格式:按照{v1 v2 … vn}的格式,每行输出一个连通集。先输出DFS的结果,再输出BFS的结果。输入样例:8 60 70 12 04 12 43.

2020-07-27 11:22:51 152

空空如也

空空如也

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

TA关注的人

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