数据结构应用程序示例代码(最好是Java)



我从过去两个月开始学习数据结构
我很擅长每一项的基础知识,但仍然发现自己无法将其应用于任何现实世界的问题

每当我遇到任何问题时,我的思维仍然停留在创建数组或对象列表,然后编写解决方案的旧模式中。(就像以前我从过程编程切换到OOP一样。但现在我可以把一切都看作对象:)

我试着在网上搜索,也浏览了几本书。但每本书都有基本的算法。(例如,在堆栈、队列、树等中创建/插入/删除/查找元素及其Big O评估)

我正在寻找一些实际问题的实际代码实现。

以下是一些数据结构应用程序的随机示例(我必须承认,并非所有数据结构都非常现实和/或实用),当然还有很多,但这应该会给出一些指示:

  • 哈希表:你有一个很大的单词和定义词典。用户可以输入一个单词并直接查看其定义。还应该可以用新词扩充字典
  • 平衡二进制搜索树(如红黑):相同的字典;除了这一次,当用户输入一个单词时,您还希望显示按字母顺序出现在它之前和之后的10个单词
  • 链表:你是一个邪恶的黑客,正在编程一个密钥记录器,监听某人在密码字段中输入密码。不幸的是,这个人往往会犯很多错别字,并不断地使用箭头键、删除和退格来纠正自己。有问题的列表包含键入的字符。还有一个迭代器位于与光标相同的位置,并相应地使用它
  • 队列:您正在处理对web服务器的顺序请求,一次一个。每当一个新的请求进来,而你仍在忙于另一个请求时,你就会把它放在队列中
  • 优先级队列:您正在实现一个进程调度程序。当进程的时间结束时,您将其放入队列中,并根据进程优先级和停止的时间点确定其密钥

相关内容

最新更新