Jorgen's blog Jorgen's blog
首页
  • 平台架构
  • 混合式开发记录
  • 推送服务
  • 数据分析
  • 实时调度
  • 架构思想

    • 分布式
  • 编程框架工具

    • 编程语言
    • 框架
    • 开发工具
  • 数据存储与处理

    • 数据库
    • 大数据
  • 消息、缓存与搜索

    • 消息队列
    • 搜索与日志分析
  • 前端与跨端开发

    • 前端技术
    • Android
  • 系统与运维

    • 操作系统
    • 容器化与 DevOps
  • 物联网与安全

    • 通信协议
    • 安全
    • 云平台
收藏
  • 关于我
  • 终身学习
  • 关于时间的感悟
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

jorgen

Love it, make mistakes, learn, keep grinding.
首页
  • 平台架构
  • 混合式开发记录
  • 推送服务
  • 数据分析
  • 实时调度
  • 架构思想

    • 分布式
  • 编程框架工具

    • 编程语言
    • 框架
    • 开发工具
  • 数据存储与处理

    • 数据库
    • 大数据
  • 消息、缓存与搜索

    • 消息队列
    • 搜索与日志分析
  • 前端与跨端开发

    • 前端技术
    • Android
  • 系统与运维

    • 操作系统
    • 容器化与 DevOps
  • 物联网与安全

    • 通信协议
    • 安全
    • 云平台
收藏
  • 关于我
  • 终身学习
  • 关于时间的感悟
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • Go学习指南
  • Golang入门
  • DS&A
    • stack
    • Queue
      • PriorityQueue
      • Linked List
      • Array
  • 算法碎碎念
  • programming_languages
Jorgen
2023-12-26
目录

DS&A

# stack

FILO

push peek/ pop

uses of stacks

  1. unde/redo features in text editors
  2. moving back/forward though brower history
  3. backtracking algorithms(maze file directories)
  4. calling functions(call stack)

# Queue

FIFO

add enqueue offer / remove dequeue poll

  1. keyboard buffer(letters should appear on the screen in the order they’re pressed)
  2. printer queue (print jobs should be completed in order)
  3. used in LinkedLists, priorityQueues, Breath-first search

# PriorityQueue

a FIFO data structure that serves element with the highest priorities first before elements with lower priority

# Linked List

  • Single linked list
  • doule linked list

Advantage

  • Dynamic data structure (allocates needed memory while running)
  • Insertion and deletion of nodes is easyO(1)
  • NO/Low memory Waste

Disadvantage

  • Greater memory usage(additional pointer)
  • No random access of elements (no index [i])
  • Accessing searching elements is more time consuming O(n)

uses

  • implements stack/queue

  • GPS navigation

  • music playlist

# Array

static / dynamic

Advantage

  • random access of elements O(1)
  • Good locality of reference and data cache utilization
  • Easy to insert/delete at the end

Disadvantage

  • wastes more memory
  • shifting elements is time consuming O(n)
  • Expanding/Shrinking the array is time consumingO(n)
上次更新: 2025/03/09, 15:45:50
Golang入门
算法碎碎念

← Golang入门 算法碎碎念→

最近更新
01
STM32入门
03-09
02
ADB调试
03-09
03
微信小程序学习记录
02-09
更多文章>
Theme by Vdoing | Copyright © 2019-2025 Jorgen | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式