• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

标签:data-structures

data-structures

Java中contains()的最快数据结构?

Java中contains()的最快数据结构?
Java中对contains()操作最快的数据结构是什么? 例如我有一组数字{1,7,12,12,20 …} 给定另一个任意数字x,(平均)最快的方法是生成x是否包含在集合中的 bool(boolean) 值? !contains()的概率大约高5倍。 是否所有 map 结构都提供o(1)操作? HashSet是最快的方法吗? 解决方案如下……继续阅读 »

c/c++

面试中简单贪婪的蛇游戏的设计数据结构

面试中简单贪婪的蛇游戏的设计数据结构
这不是一个实际的问题,我只是想在这里讨论和学习数据结构设计,我听说它是​​Google在现场采访中提出的。请告诉我如何改进我的设计,谢谢! 一开始,我想使用双端队列来存储蛇的 body 部位的x,y坐标对。 deque<pair<x, y>> snakeBodyParts; 因为蛇移动时很容易向前推-根据旧的头部位置和当前方向创建新……继续阅读 »

data-structures

如何检测链表中的循环?

如何检测链表中的循环?
假设您在Java中拥有一个链表结构。它由节点组成: class Node { Node next; // some user data } 每个节点都指向下一个节点,但最后一个节点除外,后者的下一个为空。假设列表有可能包含一个循环-即最终的Node而不是null可能引用了列表中位于其之前的节点之一。 最好的写作方式是什么 boolea……继续阅读 »

c/c++

静态和动态数据结构之间的差异

静态和动态数据结构之间的差异
静态和动态数据结构之间的主要区别,优点和缺点是什么? 最常见的数据结构属于哪些类别? 我怎么知道在哪种情况下使用它们? 解决方案如下: 首先要简化: 数据结构只有几种基本类型:数组,列表和树。其他所有内容都可以通过使用这两种结构的不同类型来构成(例如,哈希表可以实现为具有一个用于哈希值的数组和一个用于每个哈希值的列表以处理冲突)。 在这些结构中,阵列……继续阅读 »

data-structures

用于表示字符串中的模式的数据结构

用于表示字符串中的模式的数据结构
我正在寻找一个好的数据结构来表示以下形式的字符串: Domain:Key1=Value1,Key2=Value2... 每个“域”可以包含以下模式字符-*,?(*-0个或更多字符,?-0或1个字符) 每个“键”可以包含以下模式字符-*,?(*-0个或更多字符,?-0或1个字符) 每个“值”可以包含以下模式字符-*和?(*-0个或更多字符,?-0或1个字符)……继续阅读 »

2d

2D平台游戏的适当级别表示/数据结构?

2D平台游戏的适当级别表示/数据结构?
我打算用Java编写Mario的副本。我在考虑两个级别的表示形式/数据结构,但不确定该选择哪个: 一个2D整数数组。用四叉树将级别分成几部分。 它的优缺点是什么? 解决方案如下: 绝对是某种类型的二维数组。整数将是一个好主意,但是字符将是一个更好的主意。 考虑制作一个基本上是“地图”的文本文件。它可能是10行乘10列的文本。在这种情况下,非常简单的地……继续阅读 »

concurrency

CopyOnWriteArrayList如何成为线程安全的?

CopyOnWriteArrayList如何成为线程安全的?
我研究了OpenJDK source code的 CopyOnWriteArrayList ,似乎所有写操作均受同一锁保护,而读操作则根本不 protected 。据我了解,在JMM下,对变量的所有访问(读和写)都应受锁保护,否则可能会发生重新排序的效果。 例如,set(int, E)方法包含以下几行(处于锁定状态): /* 1 */ int len = e……继续阅读 »