Quiet
  • HOME
  • ARCHIVE
  • CATEGORIES
  • TAGS
  • LINKS
  • ABOUT

Alex

  • HOME
  • ARCHIVE
  • CATEGORIES
  • TAGS
  • LINKS
  • ABOUT
Quiet主题
  • 算法
  • 模型

数之道学习笔记-1

Alex.Y
Science

2025-02-27 14:52:26

数据分析工程师所需技能

  • 数学:基础数学,统计学,线性代数,微积分,优化方法
    • 微积分(导数),向量和矩阵(基本运算规则),概率论(贝叶斯规则、概率概念),对数(运算规则、公式)
  • 数据科学:机器学习,神经网络
  • 数据处理:SQL,Stata,Power BI data flow
  • 报表和建模:Excel,Power BI
  • 编程:Python

常见概念和模型

01 ABM仿真模型

​ 基于Agent的建模,Agent-Based Modeling,一种模拟复杂系统中个体(Agent)行为和互动的计算模型。可以使用NetLogo来进行建模和模拟,https://ccl.northwestern.edu/netlogo/

02 BFS、DFS、Dijstra,A*搜索算法

​ BSF算法通常指的是Breadth-First Search(广度优先搜索)算法,它是一种用于遍历或搜索树(Tree)或图(Graph)数据结构的算法。广度优先搜索从根节点(或起始节点)开始,逐层遍历所有相邻节点,直到找到目标节点或遍历完整个结构。

  • 时间复杂度:O(V + E),其中 V 是节点数,E 是边数。
  • 空间复杂度:O(V),在最坏情况下需要存储所有节点。
  • 适用场景:
    • 寻找最短路径(在无权图中)。
    • 检查图的连通性。
    • 解决迷宫问题、社交网络中的关系查找等。

​

​ DFS算法,即深度优先搜索(Depth-First Search),是一种用于遍历或搜索树(Tree)或图(Graph)数据结构的算法。DFS的核心思想是从起始节点开始,沿着一条路径尽可能深入地访问节点,直到无法继续深入为止,然后回溯并尝试其他路径。

  • 时间复杂度:O(V + E),其中 V 是节点数,E 是边数。
  • 空间复杂度:O(V),在最坏情况下需要存储所有节点(递归调用栈或显式栈)。
  • 适用场景:
    • 检查图的连通性。
    • 寻找路径(不一定是最短路径)。
    • 拓扑排序。
    • 解决迷宫问题、生成迷宫等。

​

​ Dijkstra算法(迪杰斯特拉算法)是一种用于计算单源最短路径的经典算法,由荷兰计算机科学家艾兹赫尔·迪杰斯特拉(Edsger W. Dijkstra)**于1956年提出。它用于在**带权图**(Weighted Graph)中,从一个起始节点出发,找到到图中所有其他节点的最短路径。Dijkstra算法的核心思想是贪心策略**,通过逐步扩展已知的最短路径来求解。

  • 时间复杂度:

    • 使用优先队列(最小堆):O((V + E) log V),其中 V 是节点数,E 是边数。

    • 使用普通数组:O(V²)。

  • 空间复杂度:O(V),用于存储距离表和优先队列。

  • 优点:高效、易于实现,适用于非负权图。

  • 缺点:不能处理负权边。

  • 适用场景:

    • 路径规划:如地图导航、网络路由。
    • 资源分配:如任务调度、网络流量优化。
    • 游戏开发:如AI寻路。
    • 社交网络分析:如最短关系链计算。

​ A*算法(A-Star Algorithm)是一种用于路径搜索和图遍历的启发式算法,广泛应用于人工智能、游戏开发、机器人导航等领域。A*算法结合了Dijkstra算法的最短路径搜索和启发式搜索的优点,通过引入启发式函数来优化搜索过程,从而高效地找到从起点到目标点的最优路径。

  • 应用场景

    • 游戏开发:如AI寻路、角色移动。

    • 机器人导航:如自动驾驶、无人机路径规划。

    • 地图导航:如GPS路径规划。

    • 拼图问题:如八数码问题、魔方求解。

image-20250227145947648
上一篇

初中数学知识汇总

©2026 By Alex. 主题:Quiet
Quiet主题