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

在网站建设中经历的流程flask做大型网站开发

在网站建设中经历的流程,flask做大型网站开发,网站设计制作哪种快,房地产开发公司网站建设方案一、算法介绍 快速排序#xff1a;快速排序的基本思想是通过一次排序将等待的记录分成两个独立的部分#xff0c;其中一部分记录的关键字小于另一部分的关键字。C部分的快速排序一直持续到整个序列被排序。 任取一个元素 (如第一个) 为中心提出所有小于它的元素#xff0c;并…一、算法介绍 快速排序快速排序的基本思想是通过一次排序将等待的记录分成两个独立的部分其中一部分记录的关键字小于另一部分的关键字。C部分的快速排序一直持续到整个序列被排序。 任取一个元素 (如第一个) 为中心提出所有小于它的元素并将大于它的元素放回形成左右两个子表。为每个子表重新选择中心元素并根据此规则进行调整直到每个子表只剩下一个元素 ①每次行程的子表是由两端到中间的交替近似形成的。 ②由于每个子表的操作在每次行程中都是相似的所以可以使用递归算法。 二、基本步骤 设置两个指针ij首先在序列中选择一个.temp并将数字J点与temp进行比较。如果它大于温度它将减少1。如果它小于TEMP则应该取高于当前位置J的值。 三、算法分析 最好划分后左侧右侧子序列的长度相同, 最坏从小至大递归树变成一棵树。每个分区只能得到一个对象的子序列小于前一个。它必须通过n-1次来定位所有对象第二次需要通过n-i键代码比较来找到第二个对象的位置。   如果所有可能的置换的概率相同则优选最佳情况和最坏情况平均值。 时间效率O(nlog2n) —每趟确定的元素呈指数增加空间效率Olog2n—递归要用到栈空间稳 定 性 不稳定 —可选任一元素为支点 1.如何选枢纽 从上面的描述中可以看出快速排序是通过枢轴点来回交换的因此快速排序的分类次数与初始序列有关。因此选择快速分选的关键点非常重要因为它关系到分选的效率。 取前或后法序列中的第一个或最后一个元素用作基准如果输入序列上面的数组是随机的则处理时间是可接受的。如果数组已经被排序那么分区就是一个非常糟糕的分区。由于每个分区只能减少要排序的序列所以这是最坏的情况并且时间复杂度为_(n^2)。此外输入数据排序或部分排序是很常见的。因此使用第一个元素作为中心元素是非常糟糕的。 随机选取基准这是一个相对安全的策略。因为枢轴的位置是随机的所以得到的分割不会总是产生不好的分割。当整个阵列相同时仍然是最坏的情况并且时间复杂度为On2。因此对于大多数输入数据随机快速排序可以达到Onlogn的预期时间复杂度。 三数取中法在快速排队过程中每次我们以一个元素作为支点值用该数将序列分成两部分。本文采用三位数法即以左、中、右三位数作为关键值然后进行排序。显然三位数的中值分割方法消除了预排序输入的不良情况并将快速队列的比较次数减少了大约14%。 2.如何证明时间复杂度 1、最优情况 在最佳情况下分区平均每次分区。如果对n个关键字进行排序则递归树的深度为[log2n]1([x]表示不大于x的最大整数)。也就是说只需要2次递归日志所需的时间是tn。第一个分区应该扫描整个阵列一次。n次比较。然后获得的枢轴将阵列分成两部分因此每个部分需要T(n/2)时间(注意最佳情况是所以分成两半)。结果作为连续划分的结果作出了以下不等式推断这表明在最佳情况下快速排序算法的时间复杂度为OnLogn。 2.最坏情况 然后看看快速调度的最坏情况当要排序的序列是正序或反序时并且每个分区只产生比前一个分区少一个记录子序列注意另一个是空的。如果绘制递归树则它是倾斜树。此时需要执行n‐1次递归调用且第i次划分需要经过n‐i次关键字的比较才能找到第i个记录也就是枢轴的位置因此比较次数为n(n-1)/2最终其时间复杂度为O(n^2)。 3.平均时间复杂度 直接设对规模的数组排序需要的时间期望为, 期望其实就是平均复杂度换个说法.空表的时候不用排, 所以初值条件就是 T(0) 0 .所谓快排就是随便取出一个数,一般是第一个数,然后小于等于他的放左边, 大于他的的排右边.比如左边 k 个那接下来还要排: T(n - k) T (k - 1) 的时间.然后 k 多少那是不确定的, 遍历 1~ n , 出现概率都是相等的. 另外分割操作本身也要时间 P(n) , 操作花费是线性时间 P(n) cn , 这也要加进去, 所以一共是: 四、完整代码示例 1 public class QuickSort {2 3 //任取一个元素 (如第一个) 为中心4 //所有比它小的元素一律前放比它大的元素一律后放形成左右两个子表5 //对各子表重新选择中心元素并依此规则调整直到每个子表的元素只剩一个6 //一趟排序过程后我们返回枢纽的位置7 int partition(int A[], int left, int right) {8 //选择枢纽元素9 int p A[left]; 10 while (left right) { 11 //如果尾指针位置的数比枢纽数要大移动尾指针的位置否则就把所指示的值给首指针的位置 12 while (left right A[right] p) { 13 --right; 14 } 15 A[left] A[right]; 16 //如果首指针位置的数比枢纽数要小移动首指针的位置否则就把所指示的值给尾指针的位置 17 while (left right A[left] p) { 18 left; 19 } 20 A[right] A[left]; 21 } 22 //此时的首尾指针已经相等把枢纽的值赋给首尾指针相等的位置即可 23 A[left] p; 24 return left; 25 } 26 27 //快速排序的递归 28 void Quick(int A[], int left, int right) { 29 //定义一个枢纽的位置 30 int pnode; 31 if (left right) { 32 pnode partition(A, left, right); 33 Quick(A, left, pnode - 1); 34 Quick(A, pnode 1, right); 35 } 36 } 37 38 public static void main(String[] args) { 39 40 }
http://wiki.neutronadmin.com/news/214555/

相关文章:

  • 网站开发技术历史网络营销策略的演变
  • 建设优质网站需要什么微信代码小程序
  • 现代化的中国风网站定制物品的app有哪些
  • 免费建商城网站哪个好汕头新导网络公司
  • 微信微网站开发猎头招聘网官网
  • 西安网站制作工程师线上推广策划方案范文
  • 上线了怎么建网站村庄建设网站
  • 网站建设模块一项目三电子商务网站建设实践报告摘要
  • 如何做网站美工乔拓云官网免费
  • 如何快速建网站seo网络推广公司报价
  • 番禺网站开发服务深圳门户网站
  • WordPress文档批量发布接口seo基本步骤顺序
  • 企业的做网站桂林建设银行招聘网站
  • 网站收录突然全部没有了个人可以做推广的平台有哪些
  • 东莞网站新站排名无障碍网站开发
  • 天河移动网站建设云南网站制作怎么计费
  • 音乐网站建设报告微商城网站建设推广
  • 网站的动态文字是怎么做的好的网站设计
  • 网站网站服务器青岛营销网站建设
  • 清空网站空间做网站做得好的公司有哪些
  • 建设建网站WordPress建立个人相册
  • 银川网站建设nx110常州营销网站建设
  • 哪个企业的网站做的比较好当当网的网站建设要求
  • 小企业网站模板个人音乐网站建设
  • 网站建设所需要软件机加工接单什么平台好
  • 新乡集团网站建设软文文案
  • 招聘网站建设策划书防控政策优化
  • 做健身网站开题报告可以做书的网站
  • 浙江网站建设推广公司找哪家河北健康码app官网下载
  • php做网站安性如何国内org域名的网站