- 博客(5)
- 收藏
- 关注
原创 排序:二分法
快速排序之所以比较快,是因为相比冒泡排序,每次交换是跳跃式的。每次排序的时候设置一个基准点,将小于等于基准点的数全部放到基准点的左边,将大于等于基准点的数全部放到基准点的右边。这样在每次交换的时候就不会像冒泡排序一样只能在相邻的数之间进行交换,交换的距离就大得多了。因此总的比较和交换次数就少了,速度自然就提高了。当然在最坏的情况下,仍可能是相邻的两个数进行了交换。因此快速排序的最差时间复杂度和冒泡排序是一样的,都是(O(N2),它的平均时间复杂度为O(NlogN)。其实快速排序是基于一种叫做“二分”的思想
2023-02-24 14:05:14 100
原创 关于三种排序
①桶排序②冒泡排序基本思想每次比较两个相邻的元素,如果它们的顺序错误就把他们交换过来。原理:每一趟只能确定将一个数归位。若有n个数进行排序,只需将n-1个数归位 。冒泡排序的核心部分是双重嵌套循环。③快速排序关键:基准数
2023-02-24 14:00:03 92
原创 关于《循环》(二)
题目描述输入一行整数,使用空格隔开,寻找这行整数中最大值的位置并输出。最低位从 1 开始计数,如果最大值相同,则输出第一次出现的最大值的位置。输入格式一行整数,用空格隔开。输出格式一个整数。输入输出样例输入0 1 2 3 4 5 6输出7说明/提示最大的值为 6,在第 7 个位置,所以输出 7。题目分析对于输入的数字列表,找出最大的那一位,并打印其下标即可思路分析数学思路分析依次比较列表的每一个数字,找出最
2023-02-09 22:23:37 334
原创 关于《循环》
题目描述(检查是否所有A都在B之前)现在给你一个仅由字符 a 和 b 组成的字符串 s 作为输入。你需要编写一个程序来实现字符串中每个 a 都出现在每个 b 之前,如果满足要求,那我们就输出 True ;否则,我们就输出 False 。输入输出格式输入格式输入字符 a 和 b 组成的字符串 s 。输出格式输出 bool 值 true 和 false。输入输出样例1输入"aaabbb"输出True输入输出样例2输入"bbb"
2023-02-09 22:19:53 154
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人