(1)有穷性: 算法中每条指令的执行次数有限,执行每条指令的时间有限
(2)确切性: 算法的每一步骤必须有确切的定义
(3)输入: 一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定除了初始条件
(4)输出: 一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的
(5)可行性:算法中执行的任何计算步都是可以被分解为基本的可执行的操作步,即每个计算步都可以在有限时间内完成
算法分类: 基本算法,数据结构算法,数论与代数算法,计算几何算法,图论算法,动态规则与数据分析,加密算法,排序算法,检索算法,随机化算法,并行算法
7. 复杂度
算法的复杂度可以使用 时间复杂度 和 空间复杂度 来衡量。
时间复杂度:算法的时间复杂度是指算法需要消耗的时间资源
空间复杂度: 算法的空间复杂度是指算法需要消耗的空间资源
8.数据的物理结构
数据的物理结构(Physical Structure) 又称为 存储结构,是数据在计算机中的表示和存储,包括数据元素的表示和存储以及数据元素关系的表示和存储。
数据结构存储分为:(1)顺序存储结构.(2)链式存储结构
顺序存储结构:通过数据元素在计算机存储器上的相对位置来表示数据元素的逻辑关系,一般把逻辑相邻的数据元素存储在物理位置相邻的存储单元中。
C# 中的数组结构就是典型的顺序存储结构方式。
链式存储结构:相邻元素不需要在物理存储位置单元相邻,它们而是通过存储相邻数据元素的地址来维护关系。地址我们通常称之为为引用(Reference)
备注:此篇文章只是总结了数据结构方面的一些概念,我们在学习编程的时候经常说数据,复杂度等等这些概念,至于这数据,复杂度等等到底是什么东西我们也没有去研究过,这里总结了一些知识点可以帮助大家理解这些概念。
以上这篇C#常用数据结构和算法总结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持ASPKU。
注:相关教程知识阅读请移步到c#教程频道。










