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

洛阳做网站哪家好百度推广排名代发

洛阳做网站哪家好,百度推广排名代发,建设网站比较好的公司,乌鲁木齐找工作网站2-1 算法的时间复杂度分析 2.1.1 输入规模与基本语句 输入规模&#xff1a;算法处理数据的规模&#xff0c;通常用 n 表示。 基本语句&#xff1a;执行次数与输入规模直接相关的关键操作。 例2.1 顺序查找 int SeqSearch(int A[], int n, int k) { for (int i 0; i < n…

2-1 算法的时间复杂度分析

2.1.1 输入规模与基本语句

  • 输入规模:算法处理数据的规模,通常用 n 表示。

  • 基本语句:执行次数与输入规模直接相关的关键操作。

  • 例2.1 顺序查找

    int SeqSearch(int A[], int n, int k) {  for (int i = 0; i < n; i++)  if (A[i] == k) break;  if (i == n) return 0;  else return (i + 1);  
    }
    
    • 输入规模 n;基本语句是“比较 A[i] == k”

2.1.2 渐近分析

  • 大 O、大 Ω、大 Θ

    • T(n)=O(f(n)):∃ c, n₀, ∀ n ≥ n₀, T(n) ≤ c·f(n)

    • T(n)=Ω(f(n)):∃ c, n₀, ∀ n ≥ n₀, T(n) ≥ c·f(n)

    • T(n)=Θ(f(n)):同时满足 O(f(n)) 和 Ω(f(n))

  • 例:若 T(n) ≤ 100n + n 则 T(n)=O(n)

    • 取 n₀=5, c=101, 则 ∀ n ≥ 5, T(n) ≤ 101n → O(n)

  • 常见增长阶
    1 < log n < n < n log n < n² < n³ < … < 2ⁿ < n!

  • 例2.4 合并算法

    void Union(int A[], int n, int B[], int m, int C[]) {int i=0, j=0, k=0;while (i<n && j<m) {if (A[i] <= B[j]) C[k++] = A[i++];else C[k++] = B[j++];}while (i<n) C[k++] = A[i++];while (j<m) C[k++] = B[j++];
    }
    
    • 时间复杂度 O(n + m)

2.1.3 最好、最坏和平均情况

  • 当算法执行代价依赖于不同输入时,需要分别分析:

    • 最好情况:最少操作次数;

    • 最坏情况:最多操作次数;

    • 平均情况:所有输入实例上的平均操作次数。

  • 顺序查找例

    • 最好:第1个元素即中,比较1次;

    • 最坏:未找到或在末尾,比较n次;

    • 平均:约(n + 1)/2次


2-2 算法的空间复杂度分析

  • 空间复杂度 = 输入/输出数据占用 + 算法本身占用 + 辅助空间

    1. 输入/输出数据:题目本身的数据结构;

    2. 算法本身:局部变量、常量,通常为 O(1);

    3. 辅助空间:临时数组、递归栈等。

  • 示例

    • CommonFactor 求最大公约数:仅用常数级局部变量,O(1);

    • BubbleSort:只用固定数量的索引和临时变量,O(1);

    • Merge:需要长度为 n 的临时数组,O(n)。


2-3 算法的实验分析

  • 实验分析:将算法实现为程序,上机运行,实际测算时空开销

  • 常用度量方法

    1. 计数法:插入计数器,记录关键语句执行次数;

    2. 计时法:记录程序段开始和结束时间,计算时间差。

  • 例 BubbleSort 实验

    void BubbleSort(int r[], int n) {int j, temp, count1=0, count2=0, bound, exchange=n-1;while (exchange != 0) {bound = exchange; exchange = 0;for (j = 0; j < bound; j++)if (++count1 && r[j] > r[j+1]) {temp = r[j]; r[j] = r[j+1]; r[j+1] = temp;count2 += 3; exchange = j;}}cout<<"比较次数="<<count1<<",移动次数="<<count2<<endl;
    }
    
    • 目的:统计比较次数和移动次数

  • Collatz 过程实验

    • 规则:n 为奇数 → 3n+1,否则 → n/2,直到 n=1;

    • 例 n=9:{9,28,14,…,1};

    • 例 n=27:77步到9232,再32步到1。


2-4 拓展与演练:最优算法与下界

  • 下界 Ω 表示法
    若 ∃ c, n₀, ∀ n ≥ n₀, T(n) ≥ c·g(n),则 T(n)=Ω(g(n)),g(n) 是问题的时间下界

  • 最优算法
    如果问题已知下界 g(n),且算法满足 T(n)=Θ(g(n)),则该算法为最优。

  • 例2.10 最小值算法

    int ArrayMin(int a[], int n) {int min = a[0];for (int i = 1; i < n; i++)if (a[i] < min) min = a[i];return min;
    }
    
    • 比较次数下界 Ω(n),算法时间 O(n),故为最优。

http://www.dtcms.com/wzjs/30919.html

相关文章:

  • c 网站开发构想看啥网一个没有人工干预的网
  • 怎么在网站上做游戏代练杭州网站制作排名
  • 贵阳学网站建设百度教育会员
  • 做旅游销售网站平台ppt模板网络营销策划的内容
  • 网站改版模版网络营销计划的七个步骤
  • 做番号网站的 违法网络营销理论
  • 公司网站域名解析谁来做汕头网站排名
  • web前端毕业论文seo网站优化方法
  • wordpress建站视频教程国内seo排名分析主要针对百度
  • 网站的新闻栏与产品栏如何做域名官网
  • 哪个网站可以做360度评估免费建站有哪些
  • 医院网站方案宁波seo网络推广渠道介绍
  • html做的旅游网站做网站怎么优化
  • 郑州发布直播武汉seo引擎优化
  • 建设电影网站数据库脚本做游戏推广一个月能拿多少钱
  • 淘宝客网站模板网站seo策划方案实例
  • 松江手机网站开发常见的网络营销方法有哪些
  • 安全的网站建设如何建立网站 个人
  • 网站备注销舟山百度seo
  • 拟与 合作建设网站 请予审批福建优化seo
  • 怎么做网站教程 用的工具开鲁网站seo站长工具
  • 搜索引擎网站提交入口百度下载安装免费版
  • 网站怎样才有流量项目推广平台有哪些
  • 做网站编程要学什么搜索引擎营销成功案例
  • 网站备案号如何查询排名第一的玉米品种
  • 建设 政务数据共享网站东莞seo排名公司
  • 网站和站点的区别网站性能优化方法
  • 自己设计logo的网站关键词全网搜索
  • 二级网站排名做不上去网销怎么销售的
  • 经营范围网站建设锦绣大地seo