?常见基本排序 选择排序 ? 基本思路:从第一位开始标记,每次选出最小数字与标记位交换 代码实现: private static void selectSort(int[] arr) { if(arr == null || arr.length < 2){ return; } for (int i ...
分类:
编程语言 时间:
2021-06-30 17:58:34
阅读次数:
0
BUAA UNIT3 社交关系模拟系统 一. 总结实现自己实现规格所采取的设计策略 ? 在实现JML规格时,采取的策略为先大致读一遍JML规格,理解将要实现的类成员变量与方法的大致意义,之后去设计将要实现的类中的数据结构与算法,然后开始下手写代码。值得注意的是,这仅仅是第一步要进行的工作。 ? 在之 ...
分类:
其他好文 时间:
2021-06-02 15:12:46
阅读次数:
0
并查集主要用于解决连接问题,其基本思想是为每一个数据都打上标签,当标签一致时则为一个集合。但是考虑到求并集的时候的效率问题,这里采用树形结构解决该问题,简单来说就是利用两个节点的根节点是否一致作为是否为一个集合的标志。 实现 查找:为防止该数据结构退化为链表,在每次查找过程中,选择进行路径压缩,使该 ...
分类:
编程语言 时间:
2021-04-29 12:09:20
阅读次数:
0
算法的五大特征输入:0或者多个输入输出:1或者多个输出有穷性:有限的步骤,可接受的时间确定性:每一步都有确定的意义,不会出现二义性可行性:每一步都是可行的 单靠时间判断算法效率不准确,需要结合硬件和环境时间复杂度:T(n) = n^3*2大o表示法:n^3 数据不同,算法执行不同最优时间复杂度最坏时 ...
分类:
编程语言 时间:
2021-04-29 12:05:40
阅读次数:
0
历年考试情况-计算机与软件工程知识考试题型说明 | 知识点 | 考查内容 | | | | | 软件工程基础知识 | 开发模型、设计原则、测试方法、质量特征、CMM、Pert图、风险管理 | | 面向对象 | 面向对象基本概念、面向对象分析与设计、UML、设计模式 | | 数据结构与算法 | 数组、栈 ...
分类:
其他好文 时间:
2021-04-27 15:06:37
阅读次数:
0
##深度剖析C语言知识体系 原理+实践,一课带你吃透C语言 C语言系统化精讲 重塑你的编程思想 打造坚实的开发基础 \/ itspcool 交流学习 每个优秀开发者都应该精通C语言? 技术素养,更深厚 如果想追求编程的更高境界,必须掌握操作系统、编译 原理、数据结构与算法等,C语言是前提。 造轮子能 ...
分类:
编程语言 时间:
2021-04-26 12:58:29
阅读次数:
0
##基本思想: 1.列表每两个相邻的数,如果前面的比后面大,则交换这两个数 2.一趟排序完成后,则无序区减少一个数,有序区增加一个数 注意:趟,无序区范围 ###代码实现: import random def bubble_sort(lst): for i in range(len(lst)-1): ...
分类:
编程语言 时间:
2021-03-16 13:49:26
阅读次数:
0
图片来源于:极客时间《数据结构与算法之美》 https://time.geekbang.org/column/intro/126 1. 数组 数组是最简单的数据结构,它的结构特点是:需要连续的内存空间,能够通过数组下标快速的访问数组内的元素,但是初始时需要指定大小,并且不能动态扩容,当容量不够时,需 ...
分类:
编程语言 时间:
2021-03-08 14:07:35
阅读次数:
0
内容摘自:数据结构与算法之美 链表 链表并不需要一块连续的内存空间,它通过“指针”将一组零散的内存块串联起来使用。 单链表 链表通过指针将一组零散的内存块串联在一起。其中,我们把内存块称为链表的“结点”。 为了将所有的结点串起来,每个链表的结点不仅要存储数据,还需要记录下一个结点的地址。我们将这个记 ...
分类:
其他好文 时间:
2021-03-08 13:20:35
阅读次数:
0
推到大O阶(时间复杂度)方法: 用常数1取代运行时间中的所有加法常数 在修改后的运行次数函数中,只保留最高阶项 如果最高阶项存在且不是1,则去除与这个项相乘的常数 得到的最后结果就是大O阶 常见的时间复杂度 例子 时间复杂度 术语 520 O(1) 常数阶 3n+4 O(n) 线性阶 3n^2+4n ...
分类:
编程语言 时间:
2021-02-19 13:45:16
阅读次数:
0