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

如何利用国外网站做自媒体新零售商业模式

如何利用国外网站做自媒体,新零售商业模式,宣威做网站推广的公司,江门网站自助建站1.常见排序算法的复杂度 1.快速排序 1.1快速排序为什么快 从名称上就能看出#xff0c;快速排序在效率方面应该具有一定的优势。尽管快速排序的平均时间复杂度与“归并排序”和“堆排序”相同#xff0c;但通常快速排序的效率更高#xff0c;主要有以下原因。 出现最差情况…1.常见排序算法的复杂度 1.快速排序 1.1快速排序为什么快 从名称上就能看出快速排序在效率方面应该具有一定的优势。尽管快速排序的平均时间复杂度与“归并排序”和“堆排序”相同但通常快速排序的效率更高主要有以下原因。 出现最差情况的概率很低虽然快速排序的最差时间复杂度为 O(N的平方) 没有归并排序稳定但在绝大多数情况下快速排序能在 O(nlog⁡N) 的时间复杂度下运行。缓存使用效率高在执行哨兵划分操作时系统可将整个子数组加载到缓存因此访问元素的效率较高。而像“堆排序”这类算法需要跳跃式访问元素从而缺乏这一特性。复杂度的常数系数小在上述三种算法中快速排序的比较、赋值、交换等操作的总数量最少。这与“插入排序”比“冒泡排序”更快的原因类似。 1.2基准数优化 快速排序在某些输入下的时间效率可能降低。举一个极端例子假设输入数组是完全倒序的由于我们选择最左端元素作为基准数那么在哨兵划分完成后基准数被交换至数组最右端导致左子数组长度为n-1右子数组长度为0 如此递归下去每轮哨兵划分后都有一个子数组的长度为0分治策略失效快速排序退化为“冒泡排序”的近似形式。 为了尽量避免这种情况发生我们可以优化哨兵划分中的基准数的选取策略。例如我们可以随机选取一个元素作为基准数。然而如果运气不佳每次都选到不理想的基准数效率仍然不尽如人意。 需要注意的是编程语言通常生成的是“伪随机数”。如果我们针对伪随机数序列构建一个特定的测试样例那么快速排序的效率仍然可能劣化。 为了进一步改进我们可以在数组中选取三个候选元素通常为数组的首、尾、中点元素并将这三个候选元素的中位数作为基准数。这样一来基准数“既不太小也不太大”的概率将大幅提升。当然我们还可以选取更多候选元素以进一步提高算法的稳健性。采用这种方法后时间复杂度劣化至O(N)方  的概率大大降低。 2.冒泡排序 ​ 3.选择排序 void selectNum(vectorint nums) {//选择排序时间复杂度O(N)的平方 空间复杂度01int n nums.size();for (int i 0; i n-1; i) {int k i;//用k记录未排序区间的最小元素for (int j i 1; j n; j) {if (nums[j] nums[k]) {k j;}}swap(nums[i],nums[k]);} }​ 4.插入排序 void insertSort(vectorint nums) {//外循环for (int i 1; i nums.size(); i) {//内循环 int base nums[i];int j i - 1;while (j0nums[j] base) {nums[j 1] nums[j];j--;}nums[j 1] base;} } 5.归并排序: void merge(vectorint nums, int num1[], int left, int right,int mid){//合并int l_pos left;//左半区int r_pos mid 1;//右半区int pos left;//临时存储的数组while(l_posmidr_posright) {if (nums[l_pos] nums[r_pos]) {num1[pos] nums[l_pos];}else {num1[pos] nums[r_pos];}}//合并剩余的左半区while (l_pos mid) {num1[pos] nums[l_pos];}//合并剩余的右半区while (r_pos right) {num1[pos] nums[r_pos];}while (left right) {//最后 将临时数组中的元素拷贝到目标数组中nums[left] num1[left];left;} } void msort(vectorint nums,int num1[],int left,int right) {//分治if (left right) {int mid (left right) / 2;msort(nums,num1,left,mid);msort(nums, num1, mid 1, right);merge(nums,num1,left,right,mid);} } void merge_sort(vectorint nums) {//入口函数int* num1 (int*)malloc(nums.size()*sizeof(int));if (num1) {msort(nums,num1,0,nums.size()-1);free(num1);} }2.leetCode.58最后一个单词的长度 给你一个字符串 s由若干单词组成单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。 双指针yyds一个指针指向最后一个字符串的最后一个字符另一个指针指向第一个相减即可。  class Solution { public:int lengthOfLastWord(string s) {int is.size()-1;while(s[i] ){i--;}int ji-1;while(j0s[j]! ){j--;}return i-j;} };
http://www.hkea.cn/news/14515052/

相关文章:

  • 聊城做wap网站公司已经有网站了 怎么做app
  • 服务器维护中是什么意思百度推广账户优化
  • 手机派网站腾讯企点怎么解绑手机号
  • 南昌网站备案辽宁建设工程信息网查询系统
  • 广州建设行业网站网站gif小图标
  • 电子商务网站建设汇报PPT广州网站定制开发方案
  • h5响应式网站技术网站开发建设是否需要经营许可
  • 做图网站被告wordpress 音乐播放插件
  • 电子商务网站建设一般流程企业为什么要建立自己的网站
  • 甘肃网站建设推广黄页88网注册
  • 网页设计与网站建设教材安全员资格证书查询网
  • 建站宝盒怎么样怎么搭建论坛
  • 做网站不挣钱保定网站seo技术
  • 购物券网站怎么做网站排名优化原理
  • 如何将别人的网站作为自己的移动网站 图片优化
  • 外贸网站建设课本建设工程其它费计算网站
  • 怎么建设微网站在因特网上建设网站可选择的方案
  • 怎么建设网站规划昌大建设原名叫什么
  • 网站完成上线时间最好看免费观看高清视频了
  • 网站关键词被改怎么给公司注册网站
  • 龙采网站建设案例九洲建设集团网站
  • 设计网站推荐p网站拓扑图怎么做
  • 咸宁响应式网站建设价格英文网站怎么建
  • 酒店移动网站建设方案品牌网络推广怎么做
  • 动态手机网站怎么做的在深圳做网站平台需要什么备案
  • 旅游商城网站订单处理不用实名认证的好玩游戏
  • 网站开发工作要求网站建设的网页
  • 怎么劝客户做网站重庆网站建设leco tec
  • word链接点进去是网站怎么做公司要怎么注册
  • 网站建设源代码会议网站建设的意义