
测试工程师必备算法题
文章平均质量分 59
安洪旭真好
上海某区某公司测试开发工程师
创作除了分享知识 也是对自己知识输入到输出的闭环
大家喜欢自然好 不喜欢对我来说也没那么重要
展开
-
归并排序定义、实例详解、与冒泡排序和选择、插入排序的对比,场景举例,以及实战解析
假设有一组NBA球员数据,包括姓名、得分和场均出手次数。我们要按照得分从高到低的顺序对这些球员进行排序。步骤如下:将球员数据分成两组。分别对这两组数据进行排序。合并排好序的两组数据。重复执行步骤 1 到步骤 3 直到所有数据排序完成。现在,我们以Kobe Bryant、LeBron James和Stephen Curry三名球员为例,他们的得分分别是81、69和62,我们来演示一下递归调用过程:将Kobe Bryant和LeBron James分成两组;原创 2023-05-12 19:22:19 · 599 阅读 · 1 评论 -
快速排序 定义、实例详解、与冒泡排序和选择、插入排序的对比,场景举例,以及实战解析
return arrprint(quick_sort(arr)) # 输出:[1, 2, 3, 5, 6, 8]原创 2023-05-11 17:27:59 · 490 阅读 · 0 评论 -
插入排序 定义、实例详解、与冒泡排序和选择排序的对比,场景举例,以及实战解析
对于越接近已排序的数据集,插入排序的性能越好。在实际应用中,插入排序适合于小数据集和部分有序的数据集,但对于大型数据集,更复杂的排序算法会更为高效,例如快速排序、归并排序等。假设我们正在开发一个电子商务平台,需要根据商品的销量进行排序以便用户能更方便地找到热门商品。将球员的得分视为元素,并使用插入排序方法对他们进行排序。将每个球员按照得分插入到已经排序好的球员列表中,最后得到顺序正确的名单。冒泡排序和选择排序与插入排序的区别在于他们不是将元素插入到合适位置,而是不断交换或选择最小值来排序。原创 2023-05-09 09:39:31 · 418 阅读 · 0 评论 -
选择排序定义、实例、与冒泡排序对比、完整执行流程
从数组的第一个元素开始,遍历整个数组,寻找最小(或最大)的元素。将找到的最小(或最大)元素与数组的第一个元素互换位置。重新开始遍历,这次从第二个元素开始,重复上述步骤。继续这个过程,直到整个数组都排好序,即所有的元素都已按照升序(或降序)排列。选择排序的时间复杂度是O(n^2),其中 n 是数组的元素个数。这种排序算法适用于较小的数据集,但在大规模数据集的排序中,效率较低。优点是排序过程中需要的额外空间较少,空间复杂度为O(1)。原创 2023-05-08 10:36:01 · 337 阅读 · 0 评论 -
那些30K测试工程师必备的算法题 -----冒泡排序
该函数执行两次循环:一个外部循环在每个迭代中遍历数组的所有元素,一个内部循环在每个迭代中比较当前元素和下一个元素的值。当进入内部循环并完成第一轮比较时,最后的元素已经排好序,所以在接下来的轮次中可以跳过这些元素,将内部循环嵌套在外部循环中即可。冒泡排序是一种基本的排序算法,它的原理是通过重复地交换相邻两个元素的位置来将要排序的数据序列按照特定的顺序排列。步骤二:从第一个元素开始依次比较相邻的两个元素,进行n-1轮比较,最后一个元素比较完后就不需要再比较。步骤一:比较相邻的元素。原创 2023-05-06 09:36:11 · 144 阅读 · 0 评论