跳转至

数据结构

数据结构是计算机存储、组织数据的方式,是算法设计的基础。

线性数据结构

数组 (Array)

  • 定义:连续内存空间存储相同类型元素
  • 特点:随机访问O(1),插入删除O(n)
  • 应用:价格序列、技术指标数组

链表 (Linked List)

  • 定义:通过指针连接的节点序列
  • 特点:插入删除O(1),随机访问O(n)
  • 应用:动态数据管理、历史记录

栈 (Stack)

  • 定义:后进先出(LIFO)的线性结构
  • 特点:只能在一端操作
  • 应用:函数调用栈、撤销操作

队列 (Queue)

  • 定义:先进先出(FIFO)的线性结构
  • 特点:两端操作,顺序处理
  • 应用:任务调度、数据流处理

非线性数据结构

树 (Tree)

  • 定义:层次化的非线性结构
  • 类型:二叉树、AVL树、红黑树、B树
  • 应用:决策树、组织架构

图 (Graph)

  • 定义:节点和边的集合
  • 类型:有向图、无向图、加权图
  • 应用:网络分析、关系建模

堆 (Heap)

  • 定义:完全二叉树,满足堆性质
  • 类型:最大堆、最小堆
  • 应用:优先队列、排序算法

散列表和集合

散列表 (Hash Table)

  • 定义:键值对存储结构
  • 特点:平均O(1)的查找、插入、删除
  • 应用:快速查找、去重

集合 (Set)

  • 定义:不重复元素的集合
  • 特点:快速成员检查
  • 应用:数据去重、集合运算

在TA中的应用

数据管理

  • 数组:存储价格序列、技术指标
  • 链表:管理动态数据、历史记录
  • 散列表:快速查找股票信息

算法实现

  • :实现递归算法、回溯
  • 队列:广度优先搜索、任务队列
  • :优先队列、TopK问题

模型构建

  • :决策树模型、分类算法
  • :关系网络、影响分析