标签: data-structures

链接列表在什么情况下有用?

大多数时候,我看到人们试图使用链接列表,在我看来,这似乎是一个穷人(或非常差)的选择.也许有必要探讨链表是否是数据结构的良好选择的情况.

理想情况下,答案将阐述用于选择数据结构的标准,以及哪些数据结构在特定情况下可能最有效.

编辑:我必须说,我不仅对数字,而且对答案的质量印象深刻.我只能接受一个,但如果有一些更好的东西不存在,那么还有两三个我不得不说会值得接受.只有一对(特别是我最终接受的那个)指出了链表提供了真正优势的情况.我确实认为Steve Jessop不仅要提出一个,而且要提出三个不同的答案,值得一提,我发现这些答案令人印象深刻.当然,即使它只是作为评论发布而不是答案,我认为Neil的博客条目也值得一读 - 不仅信息丰富,而且非常有趣.

language-agnostic linked-list data-structures

108
推荐指数
4
解决办法
2万
查看次数

数据结构"侵入性"是什么意思?

我已经看到用于描述列表和堆栈等数据结构的术语intrusive,但它是什么意思?

您能给出一个侵入式数据结构的代码示例,以及它与非侵入式数据结构的区别吗?

另外,为什么要使它具有侵入性(或非侵入性)?有什么好处?有什么缺点?

c c++ language-agnostic terminology data-structures

108
推荐指数
2
解决办法
1万
查看次数

如何在Objective-C中创建和使用队列?

我想在Objective-C程序中使用队列数据结构.在C++中,我使用STL队列.Objective-C中的等效数据结构是什么?如何推送/弹出项目?

queue cocoa objective-c data-structures

107
推荐指数
6
解决办法
7万
查看次数

在firebase上构建数据的最佳方法是什么?

我是firebase的新手,我想知道在其上构建数据的最佳方法是什么.

我有一个简单的例子:

我的项目有申请人和申请.1申请人可以有几个申请.如何在firebase上关联这两个对象?它是否像关系数据库一样工作?或者在数据设计方面需要完全不同的方法?

nosql data-structures firebase firebase-realtime-database

107
推荐指数
2
解决办法
5万
查看次数

104
推荐指数
5
解决办法
5万
查看次数

LinkedBlockingQueue vs ConcurrentLinkedQueue

我的问题涉及前面提到的这个问题.在我使用队列进行生产者和消费者线程之间的通信的情况下,人们通常会建议使用LinkedBlockingQueueConcurrentLinkedQueue

使用一个优于另一个的优点/缺点是什么?

从API的角度来看,我可以看到的主要区别是a LinkedBlockingQueue可以选择性地限制.

java queue concurrency multithreading data-structures

104
推荐指数
3
解决办法
5万
查看次数

golang为什么我们没有设置数据结构

我正在尝试解决"去编程语言"练习#1.4,这需要我有一套.我可以创建一个集合类型,但为什么语言没有附带?go,来自谷歌,guava也来自哪里,为什么语言设计师不选择添加对基础数据结构的支持?为什么强迫你的用户创建自己的实现为一个基本的集合?

set go data-structures

100
推荐指数
4
解决办法
7万
查看次数

以递归方式反转Java中的链表

我一直在为一个类的Java项目工作.它是链表的实现(此处称为AddressList包含调用的简单节点ListNode).问题在于,所有事情都必须通过递归算法来完成.我能做的一切都很好,没有一种方法:public AddressList reverse()

ListNode:

public class ListNode{
  public String data;
  public ListNode next;
}
Run Code Online (Sandbox Code Playgroud)

现在我的reverse函数只调用一个辅助函数,该函数接受一个允许递归的参数.

public AddressList reverse(){
  return new AddressList(this.reverse(this.head));
}
Run Code Online (Sandbox Code Playgroud)

我的助手功能有签名private ListNode reverse(ListNode current).

目前,我使用堆栈迭代地工作,但这不是规范要求的.我在C中找到了一个递归反转的算法,并手工将其转换为Java代码,但是它有效,但我对此并不了解.

编辑:没关系,我在此期间弄清楚了.

private AddressList reverse(ListNode current, AddressList reversedList){
  if(current == null) 
      return reversedList;
  reversedList.addToFront(current.getData());
  return this.reverse(current.getNext(), reversedList);
}
Run Code Online (Sandbox Code Playgroud)

虽然我在这里,有没有人看到这条路线有任何问题?

java recursion linked-list data-structures

97
推荐指数
8
解决办法
18万
查看次数

不同数据结构的实际用途

有很多关于数据结构的讨论,但我找不到简单的数据结构列表及其实际用途.我正在努力学习面试,我认为这会帮助我和其他许多人一起.我正在寻找这样的东西:

数据结构 - 示例/用于

哈希表 - 快速数据查找...然后给出一个例子

数组 - ......

二叉树 - ......

如果某个地方有这样的资源,请告诉我.

谢谢!

编辑:我的意思是维基百科很好,但在大多数页面上,它们实际上并未列出实际用途.我正在寻找更多的东西.

data-structures

97
推荐指数
5
解决办法
11万
查看次数

如何将SQL查询结果转换为PANDAS数据结构?

任何有关此问题的帮助将不胜感激.

所以基本上我想对我的SQL数据库运行查询并将返回的数据存储为Pandas数据结构.

我附加了查询代码.

我正在阅读关于Pandas的文档,但是我有问题确定我的查询的返回类型.

我试图打印查询结果,但它没有提供任何有用的信息.

谢谢!!!!

from sqlalchemy import create_engine

engine2 = create_engine('mysql://THE DATABASE I AM ACCESSING')
connection2 = engine2.connect()
dataid = 1022
resoverall = connection2.execute("
  SELECT 
      sum(BLABLA) AS BLA,
      sum(BLABLABLA2) AS BLABLABLA2,
      sum(SOME_INT) AS SOME_INT,
      sum(SOME_INT2) AS SOME_INT2,
      100*sum(SOME_INT2)/sum(SOME_INT) AS ctr,
      sum(SOME_INT2)/sum(SOME_INT) AS cpc
   FROM daily_report_cooked
   WHERE campaign_id = '%s'", %dataid)
Run Code Online (Sandbox Code Playgroud)

所以我想知道我的变量"resoverall"的格式/数据类型是什么,以及如何使用PANDAS数据结构.

python mysql data-structures pandas

97
推荐指数
9
解决办法
19万
查看次数