type
status
date
slug
summary
tags
category
icon
password

线性数据结构

主要数据结构:

  1. 数组 (Array)
  1. 链表 (Linked List)
  1. 字符串 (String)
  1. 栈 (Stack)
  1. 队列 (Queue)

数组、链表和字符串共用的解决方法:

  1. 双指针 (Two Pointers)
      • 适用于多种线性数据结构的遍历、搜索和子结构寻找等问题。
  1. 滑动窗口 (Sliding Window)
      • 主要用于处理子序列或子串相关的问题。
  1. 哈希表 (Hash Table)
      • 适用于快速查找、统计及映射相关问题。
  1. 动态规划 (Dynamic Programming)
      • 适用于解决具有重叠子问题和最优子结构的问题。
  1. 递归 (Recursion) / 回溯 (Backtracking)
      • 适用于搜索所有可能解或路径的问题。
  1. 排序 (Sorting)
      • 适用于对元素进行排序以简化问题或作为其他算法的前处理步骤。
  1. 贪心算法 (Greedy Algorithm)
      • 适用于在每一步都采取最优选择的问题。
  1. 位操作 (Bit Manipulation)
      • 适用于需要进行位运算的问题。
  1. 模拟 (Simulation)
      • 适用于直接模拟问题描述的过程的问题。
 

数组特定的解决方法:

  1. 前缀和 / 差分
      • 用于处理元素累计和或元素间的差异问题。
  1. 二分查找 (Binary Search)
      • 主要用于有序数组的快速查找问题。
 

链表特定的解决方法:

  1. 快慢指针技巧
      • 用于查找链表的中点、检测循环等问题。
  1. 合并 (Merge)
      • 例如合并两个有序链表的问题。
       

字符串特定的解决方法:

  1. 前缀树 (Trie)
      • 主要用于处理字符串匹配和前缀查找等问题。
  1. 字符串匹配算法 (例如 KMP, Boyer-Moore)
      • 用于处理字符串的模式匹配问题。
 

栈和队列特定的解决方法:

  1. 单调栈 / 单调队列
      • 用于解决元素之间的顺序和相对关系问题。
       
 
 
STAT 7070 - Statistical Methods for ResearchANOVA
Tianqi
Tianqi
I'm currently working in a lab focused on computer vision projects powered by machine learning.
Announcement
type
status
date
slug
summary
tags
category
icon
password
🎉Welcome to my blog🎉
Sometimes it is necessary to refresh the page twice to get the latest data because the data in the database is not updated in time. This operation can be performed on each page.
-- Tianqi ---