当前位置: 首页 > news >正文

珠海新盈科技有限公 网站建设seo和点击付费的区别

珠海新盈科技有限公 网站建设,seo和点击付费的区别,什么是动态网站,珠海本地网站1、冒泡排序 冒泡排序是从下标 1 遍历到 n,每当遇到大于下一个的,就和上一个交换位置,这样最大的就移动到了 n 的位置,然后从头再从 1 遍历到 n-1,把第二大的移动到 n-1 的位置,依此类推,每次从…

1、冒泡排序

冒泡排序是从下标 1 遍历到 n,每当遇到大于下一个的,就和上一个交换位置,这样最大的就移动到了 n 的位置,然后从头再从 1 遍历到 n-1,把第二大的移动到 n-1 的位置,依此类推,每次从剩下的里面挑出最大的一个放在末尾。它的特点是每次遍历过程中都会不断的交换位置,即为冒泡排序,是一种稳定排序。

package com.fdw.algorithm.sort;import java.util.Arrays;/*** @program: RedisDemo* @description: 冒泡排序* @author: fudingwei* @create: 2024-05-30 13:58**/
public class BublingSort {public static void main(String[] args) {int[] array = new int[]{6,5,72,1,4,5,12,8,3,2,7};sort(array);System.out.println(Arrays.toString(array));}public static void sort(int[] array){for (int i = 0; i < array.length; i++) {boolean flag = true;//关键是j < array.length-i-1for (int j = 0; j < array.length-i-1; j++) {//冒泡排序的过程中不停的在交换if(array[j]>array[j+1]){swap(array,j,j+1);flag = false;}}//没有进行交换,说明已经有序if(flag){break;}}}public static void swap(int[] array,int left,int right){int temp = array[left];array[left] = array[right];array[right] = temp;}
}

2、选择排序

选择排序是是从下标 1 遍历到 n,找出最小数的下标,然后将最小数和下标 1 交换位置,然后再从下标 2 遍历到 n,找出第二小的数,将其和下标 2 交换位置,依此类推,每次从剩下的里面挑出最小的一个放在前面。它的特点是每次遍历过程中只会交换一次位置,即为选择排序,是一种不稳定排序。

package com.fdw.algorithm.sort;import java.util.Arrays;/*** @program: RedisDemo* @description: 选择排序* @author: fudingwei* @create: 2024-05-30 14:24**/
public class SelectSort {public static void main(String[] args) {int[] array = new int[]{6, 5, 72, 1, 4, 5, 12, 8, 3, 2, 7};sort(array);System.out.println(Arrays.toString(array));}public static void sort(int[] array) {for (int i = 0; i < array.length; i++) {int min = i;//每次选出最小的,存下标for (int j = i + 1; j < array.length; j++) {if (array[j] < array[min]) {min = j;}}//把最小的放第一位if (min != i) {swap(array, i, min);}}}public static void swap(int[] array, int left, int right) {int temp = array[left];array[left] = array[right];array[right] = temp;}
}

3、插入排序

插入排序是从第二位开始遍历,遍历时当这一位数小于前一位时,就会和前面的进行交换位置,如果交换完后该数仍然小于前一位,会继续交换,一直到该数不小于前一位为止,它的特点是每次遍历前都能保证前面的数据已经是递增的状态,将数据插入到已有顺序中它应该在的位置,即为插入排序,是一种稳定排序。

package com.fdw.algorithm.sort;import java.util.Arrays;/*** @program: RedisDemo* @description: 插入排序* @author: fudingwei* @create: 2024-05-30 11:54**/
public class InsertSort1 {public static void main(String[] args) {int[] data = {1,1,2,8,4,2,1,6,4,8,6,9,2,1};sort(data);System.out.println(Arrays.toString(data));}public static void sort(int[] array){for (int i = 1; i < array.length; i++) {//遍历i前的值 大于array[i]就后移,一边移动一边排序,保证了temp前的数据一定是递增的for (int j = i-1; j >=0; j--) {if(array[j]>array[j+1]){//交换swap(j+1,j,array);}else {break;}}}}public static void swap(int l,int r,int[] array){int temp = array[l];array[l] = array[r];array[r] = temp;}
}

 总结

三种排序算法都是使用了两个for循环来遍历,时间复杂度都是O(n的平方),选择排序是不稳定的,其他两种是稳定的,三种算法都涉及到位置的交换,选择排序交换的次数最少。

http://www.shuangfujiaoyu.com/news/50178.html

相关文章:

  • 柳州网站制作工作室最新seo操作
  • 直接拖拉做网站的软件长沙网络推广外包
  • 网络营销推广优化优化好搜移动端关键词快速排名
  • 二手电商怎么做英文seo
  • 住房城乡建设部网站首页百度推广账号出售
  • 上海品划网络做网站深圳网络推广有几种方法
  • 网站建设与维护内容手机网站制作教程
  • 做网站需要商标注册吗青岛百度seo排名
  • wordpress redirectseo排名优化首页
  • 怎样做平台网站营销策划书模板范文
  • 厦门房地产网站建设企业文化建设
  • wordpress 云主机配置佛山百度快速排名优化
  • 招远网站建设招聘seo 优化 服务
  • 做推广的网站微信号免费二级域名注册网站有哪些
  • 做c语言的题目的网站2020最成功的网络营销
  • 企业如何注册自己的网站来宾网站seo
  • wordpress相关文章西安seo优化培训
  • 邯郸市住房和建设官方网站百度关键词首页排名服务
  • 网站建设公司大概多少钱页面设计
  • 中国建设银行是国企还是央企seo站内优化技巧
  • 五年级信息做网站的软件线上销售培训机构
  • 个人信息页面设计漂亮的网站seo是什么职业做什么的
  • wordpress新编辑器分类seo怎么做推广
  • 做初中试卷的网站大型网站建设平台
  • 济南网站托管推广方案策划
  • 如何建设网站 企业成都网站搭建优化推广
  • 搜索引擎优化方法有哪些windows优化大师值得买吗
  • 网站开发jquery做网站用什么编程软件
  • 有哪些做文创产品的网站宁波企业seo推广
  • 深圳 企业网站建设西安做网站