数据结构与算法

✍ dations ◷ 2025-01-23 06:09:51 #数据结构与算法
在计算机科学中,数据结构(英语:data structure)是计算机中存储、组织数据的方式。数据结构意味着接口或封装:一个数据结构可被视为两个函数之间的接口,或者是由数据类型联合组成的存储内容的访问方法封装。大多数数据结构都由数列、记录、可辨识联合、引用等基本类型构成。举例而言,可为空的引用(nullable reference)是引用与可辨识联合的结合体,而最简单的链式结构链表则是由记录与可空引用构成。数据结构可透过编程语言所提供的数据类型、引用及其他操作加以实现。一个设计良好的数据结构,应该在尽可能使用较少的时间与空间资源的前提下,支持各种程序运行。不同种类的数据结构适合不同种类的应用,部分数据结构甚至是为了解决特定问题而设计出来的。例如B树即为加快树状结构访问速度而设计的数据结构,常被应用在数据库和文件系统上。正确的数据结构选择可以提高算法的效率(请参考算法效率(英语:algorithmic efficiency))。在计算机程序设计的过程中,选择适当的数据结构是一项重要工作。许多大型系统的编写经验显示,程序设计的困难程度与最终成果的质量与表现,取决于是否选择了最适合的数据结构。系统架构的关键因素是数据结构而非算法的见解,导致了多种形式化的设计方法与编程语言的出现。绝大多数的语言都带有某种程度上的模块化思想,透过将数据结构的具体实现封装隐藏于用户界面之后的方法,来让不同的应用程序能够安全地重用这些数据结构。C++、Java、Python等面向对象的编程语言可使用类 (计算机科学)来达到这个目的。因为数据结构概念的普及,现代编程语言及其API中都包含了多种默认的数据结构,例如 C++ 标准模板库中的容器、Java集合框架以及微软的.NET Framework。

相关

  • 孢子囊孢子囊是植物或真菌制造并容纳孢子的组织。孢子囊会出现在被子植物门、裸子植物门、蕨类植物门、蕨类相关、苔藓植物、藻类和真菌等生物上头。小孢子囊是花朵雄蕊上被称做花
  • 纤维二糖纤维二糖(英语:Cellobiose)是由两分子β-D-葡萄糖通过β(1→4)糖苷键连接而形成的二糖,纤维二糖是纤维素这种多糖的基本重复单位。是由一分子β-D-吡喃葡萄糖提供半缩醛羟基和一分
  • 小儿麻痹症脊髓灰质炎(英语:poliomyelitis,简称polio),俗称小儿麻痹症(中文名称译自日语“小児麻痺”;后者则译自英语infantile paralysis),又译急性灰白髓炎。是由脊髓灰质炎病毒引起,可感染人
  • 塔西陀普布利乌斯·科尔奈利乌斯·塔西陀(Publius或Gaius Cornelius Tacitus,也译作塔吉突士,55年?—117年?),罗马帝国执政官、雄辩家、元老院元老,也是著名的历史学家与文体家,他的最主要
  • 亚特兰大猎鹰国家橄榄球联盟(1966年至今)联会冠军(2) 国家联会:分区冠军(6) 国联西区:亚特兰大猎鹰(英语:Atlanta Falcons)是一支职业美式橄榄球球队位于佐治亚州的亚特兰大。他们现是国家橄榄球
  • 陈桥兵变陈桥兵变,又称陈桥驿兵变,是中国历史上一宗发生在后周显德七年(960年)的军事政变。后周禁军效仿后汉乾和八年(950年)军士拥立郭威登基称帝的澶州兵变,于陈桥驿(今河南封丘东南陈桥镇
  • 圣彼得堡省纹章圣彼得堡省(Санкт-Петербургская губерния)是俄罗斯帝国的一个省。成立于1708年12月18日,原名英格里亞省,是俄国最早的八个省之一,1710年改名。瑞
  • 发高烧发烧(英语:fever),又称作发热(英语:pyrexia)或发热反应(英语:febrile response),其定义为:体温在调节时超过了平常体温。现在医界并没有一致认可的正常体温上限,文献从37.3到38.3℃都有。
  • 哈德逊河哈德逊河(英语:Hudson River,又译赫逊河)是美国纽约州的大河,长507公里,发源于纽约上州阿第伦达克山脉,上游分出莫华克河,西接伊利运河(可达五大湖),流经哈德逊河谷后汇入纽约港,是纽约
  • 小区小区(英语:Microdistrict,俄语:микрорайо́н,乌克兰语:мікрорайон)是指苏联设计的一种居住建筑群规划区,在今天的俄罗斯及一些前苏联国家依然沿用了这一概念。