目录

算法导论NO.1:算法基础

前言

一、算法是什么?

二、算法的特征

1.有穷性

2.确切性

3.输入

4.输出

5.可行性

三、算法的评价

总结



前言

新坑今天来填第一天,最近返校后培训数学建模,感觉和算法是相关的,所以这俩同步进行,这个系列完全为了督促自己学习,同时方便自己以后能够考研、面试、学习复习使用,如果对大家有帮助,感到非常的荣幸!

一、算法是什么?

算法,听上去是个高大上的东西,自己从大一下接触数据结构碰壁后,自己是下定决心不想碰算法,后来经过不断的学习理解,真正认识到了什么是 程序=数据结构+算法。

其实自己这两年来一直在回避算法这个问题,永远的逃避,可后来发现,如果想要提高,算法是个越不过的坎,算法对于代码书写规范也有很好的帮助,所以还是打算静下心来去啃一啃算法,只求能对自己的大学生活有一定的帮助。

二、算法的特征

1.有穷性

对于每个算法,他必须是有穷的,在执行若干步之后会结束,也就是他会有个可触发出口,这样保证不会无限的循环。

2.确切性

算法的每一个步骤都必须有确切的定义,这句话的意思就是字面意思。

3.输入

一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定除了初始条件,就好比如函数构造时候有参和无参函数。

4.输出

一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的,算法得有出口,这个出口必须有一定的意义,不一定是输出一个数值,也可以把数据进行处理,例如排序算法。

5.可行性

算法他必须可行的,就是人拿手算,可以推出结果,不然算法毫无意义。

三、算法的评价

一个好的算法的评价通常通过两个指标,就是时间和空间复杂度,顾名思义,就是考虑算法时间资源和空间资源的使用情况,通常都用渐进符号表示,渐进符号就是我们今天的算法基础,这些常识的数学知识学会后,才能更好地进行算法的分析。对于一个好的算法而已,时间和空间复杂度越低,算法性能越好,也就是所需时间短,用的空间资源(可以理解为内存)少,他就越优秀。

这个是我自己的笔记,比较简单的写出了算法一些基础知识,字有点丑,如果想详细了解还是建议自己去找- -


总结

本次学习了解了算法,并学习记录一些算法知识,加油加油加油1111111

算法导论NO.1:算法基础相关推荐

  1. 我眼中的算法导论 | 第一章——算法在计算中的作用、第二章——算法基础

    一个小白的算法学习之路.读<算法导论>第一天.本文仅作为学习的心得记录. 算法(Algorithm) 对于一个程序员来说,无论资历深浅,对算法一词的含义一定会或多或少有自己的体会,在< ...

  2. 算法导论/第一部分_基础知识

    算法导论: 基础知识 Chapter 1 算法在计算中的作用 1.1 算法 1.2 作为技术的算法 Chapter 2 算法基础 2.1 插入排序 练习: 2.2 分析算法 插入算法的分析 增长量级 ...

  3. 书山有路之学习算法导论(一)--基础知识

    这个寒假打算学习算法导论这本书,每学完一部分我都会尽量更新,希望在寒假结束时有一些收获! 书山有路勤为径,加油! 一.基础知识 1.算法在计算中的作用 算法其实就是任何良定义的计算过程,算法把给定的输 ...

  4. 算法导论之贪心算法(Huffman编码和拟阵)

    贪心算法,在解决最优化问题上,通过得到子问题的局部最优解来合成问题的一个解,以局部最优选择来输出一个全局最优解. 问题要用贪心算法来求解,需满足和动态规划一样的最优子结构特征,同时还需要再每个子问题最 ...

  5. 《算法导论》CLRS算法C++实现(六)P100 基数排序

    第八章 线性时间排序 8.3 基数排序 算法导论上对基数排序的算法描述只有两行... 微言大义的说... RADIX-SORT(A, d) 1 for i ← 1 to d 2 do use a st ...

  6. 算法导论 — 比较排序算法对比实验

    <算法导论>这本书介绍了5种比较排序算法:插入排序.冒泡排序.归并排序.堆排序.快速排序.我们现在通过实验来对比这5种排序算法的运行时间.用随机数发生器生成不同长度的数组,将每种算法应用于 ...

  7. 算法导论 c语言,算法导论 之 堆排序[C语言]

    一.算法实现 堆排序算法的时间复杂度为O(nlgn),其算法实现如下: void heap_sort(int *array, int max) { int idx = 0; build_max_hea ...

  8. 算法导论系列:分治算法

    说起分治法,大家一定也都听过秦始皇采用郡县制将国家分为三十六郡的故事,我们常说"山高皇帝远",意思就是山高路远,皇帝都管不了,实际上无论皇帝多远,山有多高,整个国家都属于朝廷统治, ...

  9. 【算法导论】贪心算法,递归算法,动态规划算法总结

    一般实际生活中我们遇到的算法分为四类: 一>判定性问题 二>最优化问题 三>构造性问题 四>计算性问题 而今天所要总结的算法就是着重解决 最优化问题 <算法之道>对 ...

  10. 【算法导论】幻方算法

    说起幻方,大家应该在小学时候就已经接触过了,最简单的就是九宫格,射雕英雄传中的那段至今还记得:戴九履一,左三右七,二四为肩,六八为足.下面我们就来看看这个有趣的问题. 幻方可以分为:奇数阶幻方.双偶阶 ...

最新文章

  1. 【c语言】蓝桥杯基础练习 特殊的数字
  2. python中变量类型在程序中可以改变_python的可变与不可变数据类型
  3. 电脑分屏软件_一招定鲜 | 电脑实现分屏解决了办公和娱乐
  4. Flink从入门到精通100篇(四)-基于 Flink 和 Drools 的实时日志处理
  5. 深入理解javascript之this
  6. springboot项目不输出nohup.out日志
  7. 「博客之星」评选,互投5星,留链必投
  8. 关于在大网段中拆出小网段地址
  9. 故障诊断 | 存储Cache丢失导致数据库无法open的案例分享
  10. 探究Lucene计算权重的过程
  11. 解决Git 重复输入用户名和密码的问题
  12. SPS :SPS 2003 安装过程中的语言版本问题。
  13. 浙大首届人工智能本科生9月入学,纳入竺院图灵班
  14. 微软签署最大规模风电购买协议 打造“无碳”数据中心
  15. Probably at least one of the constraints in the following list is one you don't want.
  16. 详解Unity中的摄像机及实例应用
  17. 关于Redis在windows上运行及fork函数问题
  18. java zip 中文文件名乱码_java使用zip压缩中文文件名乱码的解决办法
  19. java 标准偏差函数std_如何使用JAVA计算标准差
  20. 都说web前端开发薪资高,入行就有上万月薪,转行难吗?

热门文章

  1. 2022最全软件测试面试宝典
  2. 3DMAX埃菲尔铁塔建模教程
  3. NLP接下来黄金十年-----周明等谈值得关注的NLP技术 | 技术专栏...
  4. 【计算机毕业设计】网上生鲜销售系统
  5. highcharts设置背景颜色,设置数据点单位,加大字体等
  6. OpenCV学习笔记3:找出人脸,同时比较两张图片中的人脸相似度
  7. 关于企业管理中不同的系统
  8. AQR:构建更稳健的商品期货组合
  9. GIS数据建库基本思想(下)
  10. J2EE集合框架02