算法
算法详解
尚振伟
生如逆旅单行道,哪有岁月可回头。。。。。。。。。。
展开
-
排序算法之选择排序
思路:1、找到数组中最小或者最大的数,与数组中第一个元素交换位置2、在剩下的元素中继续寻找最大或者最小的元素,然后与数组中第二个元素交换位置3、这样循环下去,直到整个数组排序完成public static void select_sort(int arr[]) { for (int i = 0; i < arr.length; i++) { int min = i; for (int j = i + 1; j < arr.length; j+.原创 2021-12-24 15:59:02 · 325 阅读 · 0 评论 -
排序算法之插入排序
思路1、从数组的第二个元素开始比较,及一开始用用第二个元素和第一个元素进行比较,如果复合条件,就交换它们的位置2、然后那第三个和第二个进行比较,复合则交换位置,但是此处还得继续往前进行比较,知道不符合条件3、重复步骤二,直到所有数据全部排序完毕public static void insert_sort1(int arr[]) { for (int i = 1; i < arr.length; i++) { int j = i; while (j .原创 2021-12-22 10:05:09 · 75 阅读 · 0 评论 -
冒泡排序基础与优化
思路:1、从第一个开始比较相邻的元素,升序,如果第一个比第第二个大,就交换2、对每一对相邻元素做同样的工作,这一步做完后,最后的元素会是最大的数3、接着从第一个元素开始,针对所有元素重复以上的步骤,除了最后一个4、持续每次对越来越少的元素重复以上步骤,直到没有任何一对数字需要比较优点:1、每进行一轮排序,就会少一次比较2、一共需要比较的次数是(arr.length-1)*arr.length/2代码:public static void bubble_sort(int arr[]).原创 2021-12-21 15:49:51 · 76 阅读 · 0 评论