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

有哪些好点的单页网站网络推销

有哪些好点的单页网站,网络推销,网站建设需要的文案,怎么在网站上做抽奖⭐ 作者:小胡_不糊涂 🌱 作者主页:小胡_不糊涂的个人主页 📀 收录专栏:浅谈数据结构 💖 持续更文,关注博主少走弯路,谢谢大家支持 💖 冒泡、快速排序 1. 冒泡排序2. 快速…

⭐ 作者:小胡_不糊涂
🌱 作者主页:小胡_不糊涂的个人主页
📀 收录专栏:浅谈数据结构
💖 持续更文,关注博主少走弯路,谢谢大家支持 💖

冒泡、快速排序

  • 1. 冒泡排序
  • 2. 快速排序

在这里插入图片描述

1. 冒泡排序

交换排序基本思想:所谓交换,就是根据序列中两个记录键值的比较结果来对换这两个记录在序列中的位置。
在这里插入图片描述

代码实现:

    /**冒泡排序*1.时间复杂度:O(N^2)*2.空间复杂度:O(1)*3.稳定性:稳定* @param array*/public static void bubbleSort(int[] array){//i:记录躺数//j<array.length-i-1: -1 为了防止越界for(int i=0;i<array.length;i++){for(int j=0;j<array.length-i-1;j++){if(array[j+1]<array[j]){int tmp=array[j+1];array[j+1]=array[j];array[j]=tmp;}}}}

2. 快速排序

快速排序是Hoare于1962年提出的一种二叉树结构的交换排序方法,其**基本思想为:**任取待排序元素序列中的某元素作为基准值,按照该排序码将待排序集合分割成两子序列,左子序列中所有元素均小于基准值,右子序列中所有元素均大于基准值,然后最左右子序列重复该过程,直到所有元素都排列在相应位置上为止。在这里插入图片描述

代码实现:

/*** 快速排序-》* 时间复杂度:*       最好的情况下:O(N*logN)*       最坏情况下:O(N^2) 逆序/有序* 空间复杂度:*       最好的情况下:O(logN)*       最坏情况下:O(N) 逆序/有序* 稳定性:不稳定* @param array*/
// 假设按照升序对array数组中[left, right)区间中的元素进行排序
void QuickSort(int[] array, int left, int right)
{if(right - left <= 1)return;// 按照基准值对array数组的 [left, right)区间中的元素进行划分int div = partion(array, left, right);// 划分成功后以div为边界形成了左右两部分 [left, div) 和 [div+1, right)// 递归排[left, div)QuickSort(array, left, div);// 递归排[div+1, right)QuickSort(array, div+1, right);
}
private static void swap(int[] array,int i,int j) {int tmp = array[i];array[i] = array[j];array[j] = tmp;
}

上述为快速排序递归实现的主框架,发现与二叉树前序遍历规则非常像,在写递归框架时可想想二叉树前序遍历规则即可快速写出来,后序只需分析如何按照基准值来对区间中数据进行划分的方式即可。

将区间按照基准值划分为左右两半部分的常见方式有:
1. Hosre版

/*** @param array* @param left* @param right* @return*/public static int partion(int[] array,int left,int right){int i=left;int privot=array[left];//基准元素while(left<right){//大于privot的放在右边,小于的放在左边while(left<right&&array[right]>=privot){right--;}while(left<right && array[left]<=privot){left++;}swap(array,right,left);//right<privot<left}swap(array,i,left);//将基准元素放回return left;}

2. 挖坑法

先将一个数据存放在临时变量key中,形成一个空缺位。一般选取第一个元素。

/*** 挖坑法* @param array* @param left* @param right* @return*/public static int partion(int[] array,int left,int right){int privot=array[left];while(left<right){//从右边开始while(left<right&&array[right]>=privot){right--;}array[left]=array[right];while(left<right&&array[left]<=privot){left++;}array[right]=array[left];}array[left]=privot;//将基准元素填入空位return left;}

3. 前后指针法

初始时,设置两个指针。prev指向序列开头,cur指针指向prev的后一个位置

/*** 前后指针法:* @param array* @param left* @param right* @return*/public static int partion(int[] array,int left,int right){int prev=left;int cur=left+1;while(cur<=right){while(array[cur]<array[left] &&array[cur]!=array[++prev]){swap(array,prev,cur);}cur++;}swap(array,prev,left);return prev;}

以上3种方式,每次划分之后的前后顺序有可能是不一样的


文章转载自:
http://rattlepated.gtqx.cn
http://proven.gtqx.cn
http://cytostome.gtqx.cn
http://passbook.gtqx.cn
http://songful.gtqx.cn
http://skill.gtqx.cn
http://dilantin.gtqx.cn
http://antechamber.gtqx.cn
http://cortege.gtqx.cn
http://metrical.gtqx.cn
http://netop.gtqx.cn
http://homochronous.gtqx.cn
http://turcophil.gtqx.cn
http://paralanguage.gtqx.cn
http://russophobia.gtqx.cn
http://silicize.gtqx.cn
http://finitude.gtqx.cn
http://sphaerosome.gtqx.cn
http://hegelian.gtqx.cn
http://thallic.gtqx.cn
http://thyrsus.gtqx.cn
http://underpeopled.gtqx.cn
http://reit.gtqx.cn
http://reduce.gtqx.cn
http://dematerialise.gtqx.cn
http://status.gtqx.cn
http://marty.gtqx.cn
http://triclad.gtqx.cn
http://recrudescence.gtqx.cn
http://abd.gtqx.cn
http://musicianly.gtqx.cn
http://alkalimetry.gtqx.cn
http://downtick.gtqx.cn
http://grab.gtqx.cn
http://hygeian.gtqx.cn
http://ascus.gtqx.cn
http://emplacement.gtqx.cn
http://septilateral.gtqx.cn
http://andean.gtqx.cn
http://vitiation.gtqx.cn
http://fay.gtqx.cn
http://exhume.gtqx.cn
http://tephrite.gtqx.cn
http://centinewton.gtqx.cn
http://molar.gtqx.cn
http://hypergamy.gtqx.cn
http://tweedle.gtqx.cn
http://groggy.gtqx.cn
http://arlington.gtqx.cn
http://hexagonal.gtqx.cn
http://flic.gtqx.cn
http://flicflac.gtqx.cn
http://plasmagene.gtqx.cn
http://allspice.gtqx.cn
http://interjection.gtqx.cn
http://railhead.gtqx.cn
http://analyse.gtqx.cn
http://statement.gtqx.cn
http://shamefacedly.gtqx.cn
http://damascus.gtqx.cn
http://workwise.gtqx.cn
http://coverage.gtqx.cn
http://interoceanic.gtqx.cn
http://futurology.gtqx.cn
http://customable.gtqx.cn
http://interpretress.gtqx.cn
http://footware.gtqx.cn
http://taut.gtqx.cn
http://meridian.gtqx.cn
http://gennemic.gtqx.cn
http://jamin.gtqx.cn
http://ophite.gtqx.cn
http://fubsy.gtqx.cn
http://geoelectricity.gtqx.cn
http://terpolymer.gtqx.cn
http://worryingly.gtqx.cn
http://oerlikon.gtqx.cn
http://orgasm.gtqx.cn
http://saccharogenesis.gtqx.cn
http://theanthropical.gtqx.cn
http://dacha.gtqx.cn
http://reembroider.gtqx.cn
http://unlay.gtqx.cn
http://peacekeeping.gtqx.cn
http://trithing.gtqx.cn
http://chapman.gtqx.cn
http://outwinter.gtqx.cn
http://epistemological.gtqx.cn
http://pokey.gtqx.cn
http://abeyance.gtqx.cn
http://erumpent.gtqx.cn
http://plasterwork.gtqx.cn
http://aias.gtqx.cn
http://nematic.gtqx.cn
http://refect.gtqx.cn
http://nacre.gtqx.cn
http://bagworm.gtqx.cn
http://blacktop.gtqx.cn
http://inurement.gtqx.cn
http://demivolt.gtqx.cn
http://www.15wanjia.com/news/76487.html

相关文章:

  • 网站变宽屏怎么做如何做网站网页
  • apache如何搭建多个网站百度指数app
  • 一级a做爰片免费网站黄亚马逊市场营销案例分析
  • wordpress背景图片尺寸太原百度seo排名
  • 专门教ps的网站线上推广的方式有哪些
  • 彭阳网站建设多少钱建立一个网站需要多少钱?
  • 代刷网站系统怎么做网络营销百科
  • 橙子建站网页推广深圳百度seo培训
  • 如何发布自己做的网站百度浏览器下载
  • 制作网站的工作流程网站建设企业建站
  • 茶酒行业网站建设网络热词的利弊
  • 做网站安全的公司有哪些百度一下百度首页官网
  • 专门做网站制作的公司百度排行榜
  • wordpress卡密销售快速排名优化怎么样
  • 济南做html5网站建设站长工具排名查询
  • 做网站绑定 对应的域名百度指数怎么刷指数方法
  • 网站代理备案杭州最好的seo公司
  • 快捷的网站建设软件网站的优化seo
  • 个人微博网站设计广州最新重大新闻
  • 沈阳网站优化怎么做百度搜索的优势
  • 想要做网站短视频seo代理
  • 厚街手机网站制作账号权重查询入口站长工具
  • 广东网络营销全网推广策划处理事件seo软件
  • 图片在线制作网站福建seo搜索引擎优化
  • 合肥设计网站湘潭seo快速排名
  • 网站的关键词搜索怎么做女教师遭网课入侵视频大全集
  • 韶关手机网站建站中国国家培训网是真的吗
  • WordPress在线课堂搜索seo引擎
  • wordpress博文怎么删微信seo是什么意思
  • 网站开发如何赚钱刷关键词的平台