一、 考试的总体要求 本考试内容由两部分组成,数据结构和程序设计,各占总分的50%。 数据结构是计算机科学与技术专业基础课,要求学生掌握基本的数据结构及相关的存储方式、基本运算、算法和应用,并能运用盒图、结构化语言、类C、高级语言(C或C++)等方法之一编写算法。 程序设计指采用C++语言,应用数据 ...
分类:
其他好文 时间:
2020-02-27 01:05:22
阅读次数:
60
//归并排序 class ArrayList { constructor () { this.array = [] } insert (data) { return this.array.push(data) } mergeSort () { this.array = this.merge_1(th ...
分类:
编程语言 时间:
2020-02-26 20:45:42
阅读次数:
79
#define _CRT_SECURE_NO_WARNINGS#include<iostream>using namespace std;void mergeSort(int a[], int s, int e, int temp[]) { if (s < e) { int m = s + (e - ...
分类:
编程语言 时间:
2020-02-25 20:27:18
阅读次数:
75
向量的基本实现和操作,含归并排序。 1 #include<iostream> 2 using namespace std; 3 typedef int ElemType; 4 #define DEFAULT_CAPACITY 10 5 6 class Vector{ 7 public: 8 int ...
分类:
编程语言 时间:
2020-02-25 14:36:06
阅读次数:
76
1 // 插入排序的写法:即使不需要哨兵,也可以写的很流畅。 2 int* insertionSort(int* A, int n) { 3 // write code here 4 for(int i=1;i<n;i++){ 5 int j=i-1,tmp=A[i]; 6 while(j>=0 & ...
分类:
编程语言 时间:
2020-02-23 18:25:30
阅读次数:
83
直接插入、选择排序、冒泡排序、快速排序、……归并排序、基数排序、希尔、堆排序、 直接插入: 思想是:1、将数据序列分成两部分,前一部分是有序的,后面一部分是无序的. 2、将无序变有序,首先从第一开始,然后第一,第二比较后排序,此时这两位就是有序的了;然后从无序的队列中取出第三位和第二位比较,然后他们 ...
分类:
编程语言 时间:
2020-02-23 16:32:03
阅读次数:
94
################## 归并排序 ####################### """ 归并算法逻辑 拆分 对整个序列进行拆分,左边一部分,右边一部分 然后对每一部分再次进行拆分,一直到拆分到只有一个元素,就到头了, 第1次拆分:54, 26, 93, 17, 77, 31, 44, ...
分类:
编程语言 时间:
2020-02-23 09:59:37
阅读次数:
87
排序 参考 "五分钟学算法" 复杂度比较 时间复杂度 O(n2) 各种简单的排序:直接插入、直接选择、冒泡 O(nlog2n) 快速排序、堆排序、归并排序 O(n1+$\lambda$),希尔排序 线性阶O(n)排序,基排序、桶、箱排序 稳定性 稳定排序:冒泡、插入、归并、基数排序 不稳定:选择、快 ...
分类:
编程语言 时间:
2020-02-22 13:40:19
阅读次数:
86
分治法的思想: 分治法的思想是分开求解然后合并。分治法的思想在很多算法中都广泛使用,例如二分查找,归并排序,快速排序。 分治法的主要步骤; 1、 划分问题:把问题分为子问题。 2、 递归求解:递归解决问题。 3、 合并问题:合并子问题得到原问题的解。 典型例题: 给出一个数组n的序列A1,A2, A ...
分类:
其他好文 时间:
2020-02-21 20:45:18
阅读次数:
69
对于非运行时异常,程序中一般可不做处理,由java虚拟机自动进行处理。 A. 正确 B. 错误 解析:运行异常,可以通过java虚拟机来自行处理。非运行异常,我们应该捕获或者抛出。 答案:B 下面哪些类可以被继承? Java.lang.Thread、java.lang.Number、java.lan ...
分类:
其他好文 时间:
2020-02-20 14:59:38
阅读次数:
161