rust实现栈数据结构

Li Guangqiao - 06/08/2023

Rust

Rust实现栈数据结构

数据结构(stack)的概念

栈就是一种线性数据结构,可用于函数调用、网页数据记录等。

栈的特性:元素先进后出,后进先出

栈结构示例

需求来源:

了解栈数据结构和结构特性。

目标:

功能需求:

总体功能结构图

功能结构图

基础能力

数据查询功能

查询栈中的所有元素及其数据存储位置

查询要素

数据删除功能

删除指定的存储数据

数据新增功能/数据入栈

数据新增实际为入栈方法,即添加到栈顶

数据插入功能

数据插入根据指定位置插入栈中

出栈方法

移除栈顶元素

方便性能力

空栈判断方法

栈长度方法

获取第一个入栈数据方法

获取最后一个入栈数据方法

程序结构图

程序处理流程图

TODO

程序实现

TODO

Li Guangqiao
Li Guangqiao

一个正在转rust的ExtJs前端工程师。迷信rust的整体发展,十分相信rust在各个领域都能发光发热,至少目前rust在很多领域上验证了其安全性、易维护性。但说实话对于我这种菜鸡也是真的难上手哈哈哈~~。 思路总结:

  • 万物诞生都会有一个需求来源,每一个改变都是为了解决某个问题,最后应该考虑如何去做
  • 学会掌握一些宏观的知识和理论:系统论、还原论
  • 工程化思想,如何描述整体,从整体架构到模块关联等 故学习东西应该像看地图一样,先看整体了解整体的结构,然后再聚焦每一个模块,对于模块的学习,思考三个问题,“是什么?”、“为什么?”、“怎么做?”;那么设计一个东西时也应该去考虑整体性和关联性。

有关于未来的发展,以下是鄙人的粗浅的观点:

  • 编程语言未来应该是每个人必备的工具
  • 未来的交互方式应该会以语言交互为主流
  • 下一个去中心化的技术方案出来之前,区块链依然是web3建立价值体系的基础技术方案,如何将现实价值和虚拟价值联通是进入数字世界的一个大难题。
  • 未来注定是AI的世界。AI的进化会伴随绝大部分人的退化,届时除了尖端人才,人们学习的重心会放在何处?