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

程序算法基础

程序设计基本概念

程序和算法

人们做任何事情都有一定的方法和程序,如:春节联欢晚会的节目单、开会的议程等,都是程序。在程序的指导下,可以有秩序地、有效的完成每一项工作。随着计算机的问世和普及,“程序”逐渐专业化,通常指:为了让计算机完成特定任务而设计的指令序列(如:解决某一问题或控制某一过程)。

从程序设计角度来说,每个问题都涉及两个方面的内容——数据和操作。“数据”泛指计算机要处理的对象,包括数据的类型、数据的组织形式和数据之间的相互关系,又称为数据结构(Date Structure);“操作”是指处理的方法和步骤,称为算法(Algorithm)。编写程序所用的计算机语言称为“程序设计语言”。

一个程序中包括:

对数据的描述,即数据结构。在程序中要指定数据的类型和数据的组织形式。

对数据处理的描述,即算法。算法是为了解决一个问题而采取的方法和步骤。

算法反映了计算机的执行过程,是对解决特定问题的操作步骤的一种描述。数据结构是对参与运算的数据及他们之间关系所进行的描述,算法和数据结构是程序的两个重要方面。

著名计算机科学家沃思(Niklaus Wirth)提出一个经典公式:

算法+数据结构=程序

实际上一个程序除了以上两个要素之外,还应当采用程序设计方法进行程序设计,并且用某一种程序设计语言表示,故上述公式可表示为:

算法+数据结构+程序设计方法+语言工具和环境=程序

数据结构

计算机处理的对象是数据,数据是描述客观事物的数、字符以及计算机能够接收和处理的信息符号的总称。数据结构是指数据的类型和数据的组织形式。数据类型体现了数据的取值范围和合法的运算,数据的组织形式体现了相关数据之间的关系。

数据结构和算法有着密切的关系,只有明确了问题的算法,才能更好的构造数据结构;选好的算法,常常依赖于好的数据结构。程序就是在数据的某些特定的表示方式和结构的基础上对抽象算法的具体描述。编写一个程序的关键是合理地组织数据和设计好的算法。

注:有不当之处,请批评指正!谢谢~


http://www.kler.cn/a/596685.html

相关文章:

  • Java中Arrays类学习
  • C/C++蓝桥杯算法真题打卡(Day5)
  • PicFlow:一个图片处理与上传工作流工具(图床上传工具)
  • Linux——空间清理的方法
  • 创建自己的github.io
  • 【鸿蒙开发】Hi3861学习笔记- UDP客户端
  • 游戏立项时期随笔记录(2)
  • dify创建第一个Agent
  • 数据库练习2
  • 鸿蒙harmonyOS笔记:练习CheckBoxGroup获取选中的值
  • python __name__与__main__深刻理解(涵详细解释、应用场景、代码举例、高级用法)
  • Android studio运行报错处理
  • macOS使用brew切换Python版本【超详细图解】
  • Spring Boot分布式项目异常处理实战:从崩溃边缘到优雅恢复
  • 信号处理等相关知识点
  • mysql 导入全量备份
  • 代码随想录算法训练营第三十五天 | 46. 携带研究材料、416. 分割等和子集
  • C语言基础与进阶学习指南(附运行效果图及术语解析)
  • 使用brower use AI 代理自动控制浏览器完成任务
  • 异步编程与流水线架构:从理论到高并发