- 博客(4)
- 收藏
- 关注
原创 经典算法之冒泡排序(优化)
优化算法是对算法的一种再创造一、原理介绍在上篇中,我们提到了冒泡排序。作为最基本的排序算法之一,冒泡排序在其便于理解的基础上,也给了我们对其在创造的空间。(个人废话可以不看)下面介绍一种对其的优化过程。当我们在排序时,不可避免地会遇到一个问题。如:有五个数,1 0 2 3 4。很容易看出,我们只需将1 0调换顺序,即可成功排序。但我们在使用之前的冒泡排序时,在交换完0 1后,还会完成后续不必要地比较工作。所以,以此为突破口进行算法优化。二、具体实现方法原冒泡排序的基础上加上了flag变量void
2021-04-02 17:38:34
316
1
原创 经典算法之冒泡排序(基础版) 纯自创
冒泡排序作为最简单的排序算法之一,是算法初学者最易理解且必须掌握的算法之一。(官方废话)下面进入正题。。。1、原理排序算法中所需要完成的两大工作:一是比较,二是交换。(这段话可以不看)。所谓冒泡,就是最底端的元素向上“冒泡”,即向元素列表尾部移动。以从大到小排序为例,从第一个元素开始移动过程中,当前一元素大于后一元素,进行交换:反之,不进行交换,之后后一元素继续与后面元素比较,直到与最后一个元素完成比较,完成第一次冒泡。第二次冒泡,从第二个开始;第三次冒泡,从第三个开始。。。。冒泡需要完成
2021-04-01 11:59:01
133
原创 题目:利用指针知识,写一函数,求一个字符串的长度
题目:利用指针知识,写一函数,求一个字符串的长度一、需求分析很明显,就是求出一个字符串中字符的数目。该函数就是C语言 string.h 库中的strlen()函数二、思维节点字符串指针的创建及引用创建C语言中,通常是将字符串放在一个字符数组中,因此,实际上字符串就是一个数组。char str[] = "hello world";char *p = str;//指针变量中存放着字符串数组中的首地址引用方法与数组指针相同for (i = 0; i < len; i++) {
2021-01-30 20:35:16
10293
3
原创 题目:运用指针知识,有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的那位是原来的第几号?
题目:运用指针知识,有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的那位是原来的第几号?一、需求分析二、思维节点三、代码实现#include <stdio.h>int main(){ int n,i,k = 0,m = 0;//k为1,2,3的计数变量,m为退出人数 int a[100]; int* p; puts("Please input the number of players:");//输入人数 scan
2021-01-30 20:05:11
2790
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人