数据结构与算法

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

相关

  • 氧气中毒氧气中毒(Oxygen toxicity)是指吸入高浓度高压氧气的不良反应,又称氧气毒性症,氧气毒性。这种症状历史上曾称以发现及描述此病症的19世纪研究员命名,其对中枢神经系统的影响称为
  • 可重新引用的统一资源标识符键连资料(又称:数据链接、关联数据,英语:Linked data)是语义网的主题之一,描述了通过可链接的URI方式来发布、分享、连接Web中各类资源的方法。是一系列利用 Web 在不同数据源之间
  • 肤色肤色根据不同族群而异,肤色的变异范围可从深色到近乎白色(白里透红是由皮肤中血液所造成)。肤色的色调决定于黑色素在皮肤中的含量。平均而言,女性肤色较男性稍浅。通常祖先源自
  • 乙腈乙腈(英语:Acetonitrile,又称氰基甲烷),化学式CH3CN。乙腈是无色的液体,是最简单的有机腈,并广泛用作极性非质子溶剂。乙腈在某些条件下,也可以发生碳-碳键断裂。工业上经乙酰胺脱水
  • 狐狼胡狼,又名狐狼或豺狼,是分布在非洲、亚洲及欧洲东南的三种(有时四种)犬科动物。胡狼与北美洲的郊狼有相似的生态位,专门捕猎细小至中等的动物。它们的脚长,犬齿弯曲,适合猎食细小哺
  • 绿球藻绿球藻可能指以下其中一项:
  • 细菌战细菌战,也称“生物战”。是一种利用细菌或病毒作武器,攻击另一方人、畜及农作物,造成人工瘟疫的一种作战方式。第一次世界大战时,德国首次使用了细菌武器。战争结束后的1925年6
  • 马萨诸塞州行政区划美国马萨诸塞州一共有14个县,其中的8个县没有自己的政府,只有5个县拥有自己的独立政府,分别是巴恩斯特布尔县、布里斯托尔县、杜克斯县、诺福克县和普利茅斯县。而楠塔基特县则
  • 民国民国即共和国。该词汇是“Republic”一词自西方传入汉字文化圈时之古雅文言式译名,构词方法与“王国”、“帝国”相同。1921年中华民国北洋政府与德国魏玛政府签订的《中德协
  • 降维在机器学习和统计学领域,降维是指在某些限定条件下,降低随机变量个数,得到一组“不相关”主变量的过程。 降维可进一步细分为变量选择和特征提取两大方法。变量选择假定数据中