首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >常用和常用的数据结构算法?

常用和常用的数据结构算法?
EN

Software Engineering用户
提问于 2013-07-16 19:12:03
回答 2查看 6.5K关注 0票数 4

我编程已经有一段时间了,而我与其他编程相比所缺少的是算法。我知道什么是链表和二叉树,但我不知道更多。

我在两次面试中失败了,因为练习要求我了解一些数据结构算法。我也开始构建一个javascript项目,它有一些很大的处理量,我需要知道一些常用的好算法?

EN

回答 2

Software Engineering用户

回答已采纳

发布于 2013-07-16 20:30:43

我个人认为很难学到足够多的知识,你应该始终关注下一步要学的东西,或者加深或扩大你现有的知识基础。

然而,所需的基本算法和数据结构将是:

最小

  • 数据结构
  • 1,2的补语和相关的算术
  • 链接列表
  • 哈希表(地图或字典)
  • 数组,树,堆栈,队列,图,数据库

算法

  • 排序
    • 泡泡分类(知道为什么不好)
    • 插入排序
    • 合并排序
    • 快速排序
    • 基式分类
    • 计数排序和桶排序
    • 堆排序

  • 搜索
    • 线性搜索
    • 二进制搜索
    • 深度优先搜索
    • 宽度优先搜索

  • 字符串操作
  • 迭代
  • 树遍历
  • 散列函数
  • 哈希表、树、列表、堆栈、队列、数组和集合或集合的具体实现

而且,最重要的是知道什么时候使用它们。

上面给出了数据结构列表的链接,下面是算法的链接

票数 4
EN

Software Engineering用户

发布于 2013-07-16 19:23:09

http://en.wikipedia.org/wiki/List_的_数据_构筑物

开始于

  • 列阵
  • 列表
  • 图表
  • 树木
  • 散列表

另请参阅http://sijinjoseph.com/programmer-competency-matrix/,其中作者按提高能力的顺序描述了以下级别:

  1. 能够在实际编程任务中解释和使用数组、LinkedLists、字典等
  2. 了解基本数据结构(数组与LinkedLists )的空间和时间权衡,能够解释如何实现哈希表,并能够处理冲突、优先级队列和实现它们的方法等。
  3. 了解高级数据结构,如B-树,二项式和斐波那契堆,AVL/红色黑树,显示树,跳转列表,尝试等。
票数 5
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/205088

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档