问题标签 [contiguous]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3131 浏览

python - pandas DataFrame 删除连续的重复项

如何删除 DataFrame 中的连续/连续/相邻重复项?

我正在处理 CSV 格式的数据,按日期排序,然后按识别号排序。识别号可以出现在不同的日子,但我只想删除每日重复的。drop_duplicates 留下一个唯一的实例,但随后在所有其他日子删除该标识符。我试过这个,但得到错误:

编辑原始帖子以添加:

我尝试 index_reset() 删除任何多索引。这是数据集的示例:

0 投票
1 回答
133 浏览

c - C中最长的公共连续子串长度

所以以下是我为算法编写的代码。我找不到它有什么问题。测试用例应该分别产生 12、4 和 3,而是分别产生 8、1 和 2。我误解了算法结构吗?

0 投票
1 回答
177 浏览

c++ - 不知何故,我的价值观似乎并没有全部插入列表

我正在做一个家庭作业,我应该使用我们的教授连续列表类来存储个人记录列表,然后可以打印或搜索特定记录。个人记录结构仅包含 first_name、last_name 和 int 代码的成员数据。

我的问题是插入记录。我们必须以正确的字母顺序插入,并且任何具有相同名字和姓氏的记录都将被丢弃。我的代码如下:

只有注释“需求1的实现”之后的代码是我的,其余的都是教授代码,不能更改。

我没有收到任何编译器错误,但程序似乎在过程中的某个地方冻结。从文件中插入记录后,它应该将控制权返回给用户以输入命令,但这永远不会发生。我正在尝试使用 Visual C++ 调试器,但我不熟悉它,它并没有给我太多的洞察力。任何帮助是极大的赞赏!

0 投票
0 回答
297 浏览

excel - 数据验证中的相关、非连续、动态命名范围

在 Excel 2010 中,我有一个像这样工作的公式:

假设标准 1 是“A”。如果 Criteria 1 的范围如下所示,这将非常有效:

  • 一个
  • 一个
  • 一个
  • B(不会包含在列表中,因为它不符合标准 1

如果列表如下所示:

  • 一个
  • 一个
  • 一个

那么产生公式输出的下拉列表就被污染了,实际上包括了B。

我的语法中缺少什么?

0 投票
6 回答
6230 浏览

c++ - 为什么将树存储为连续的内存块?

我刚刚发现有一些基于树的数据结构,在寻求高性能时,通常会存储为连续的内存块,这在使用所谓的“基于策略的数据结构”时特别受欢迎。

问题是我无法理解为什么要这样做。当您尝试“线性化”一棵树以将其存储为向量/数组时,如何确保以有意义的方式重新排列分支和叶子以提高性能?这仅适用于完美平衡的树木吗?

换句话说,我无法想象用于访问跨越多个级别并具有多个叶子的线性数据结构的模式。通常一棵树为每个节点/叶子添加1级间接,这为用户简化了很多事情,但是应该如何组织这种“线性”树?

0 投票
1 回答
2277 浏览

c++ - std::vector:连续数据和复制/移动

对于以下代码,我有两个问题:1)的元素faces是否连续? 2)插入时是否std::vector复制或移动?Face f

0 投票
2 回答
839 浏览

ios - ContiguousArrayStorage 没有实现方法SignatureForSelector

我收到这个警告:

随后出现错误

在以下代码的第 2 行:

其中每个选项卡都是 UINavigationController 的一个实例。这只发生在我的设备上,而不是模拟器上。有任何想法吗?

0 投票
1 回答
946 浏览

c - Contiguious dynamic memory allocation in linked list

I want to save space in a program that I am working on. This program creates nodes and joins them by storing address of the node in the next pointer in the structure. I want some way to not use the *next pointer to go to the next node - if I do this I will be able to save 2 bytes of memory.

I have been thinking if there is a way of contiguous allocation of address in dynamic memory allocation, so that I will store the address of the first node in a pointer then traverse or do whatever with it after tinkering with the address.

And how do addresses work - I mean how can I access them by inputting an address in the pointer and then printing it?

Here is a sample program:

It prints addresses in a contiguous manner but I don't know how to allocate them manually, like ptr=0022ff04 and then using `printf("%d",*ptr);


0 投票
2 回答
1546 浏览

c++ - 在没有 Malloc/New 或 Free/Delete 的情况下管理连续的内存块

如果没有 C++ 中其他内存管理器(例如 Malloc/New)的帮助,如何创建自定义 MemoryManager 来管理给定的连续内存块?

这里有一些更多的上下文:

我需要能够使用 MemManager 分配和释放这个连续内存的块。构造函数以字节为单位给出块的总大小。

分配函数应该以字节为单位获取所需的内存量,并返回一个指向该内存块开头的指针。如果没有剩余内存,则返回 NULL 指针。

Deallocate 函数应该接收指向必须释放的内存块的指针,并将其返回给 MemManager 以供将来使用。

请注意以下约束:

- 除了给它的内存块,MemManager 不能使用任何动态内存

- 按照最初的规定,MemManager 不能使用其他内存管理器来执行它的功能,包括 new/malloc 和 delete/free

我已经在几次工作面试中收到过这个问题,但即使是几个小时的在线研究也没有帮助我,而且我每次都失败了。我找到了类似的实现,但它们要么都使用了 malloc/new,要么是通用的,并且向操作系统请求了内存,我不允许这样做。

请注意,我对使用 malloc/new 和 free/delete 感到很自在,并且使用它们也没有什么问题。

我已经尝试过以 LinkedList 方式利用节点对象的实现,这些对象指向分配的内存块并说明使用了多少字节。然而,在这些实现中,我总是被迫在堆栈上创建新节点并将它们插入到列表中,但是一旦它们超出范围,整个程序就会因为地址和内存大小丢失而中断。

如果有人对如何实现这样的事情有某种想法,我将不胜感激。提前致谢!

编辑:我忘了在我原来的帖子中直接指定这个,但是用这个 MemManager 分配的对象可以是不同的大小。

编辑2:我最终使用了同质内存块,由于下面的答案提供的信息,这实际上很容易实现。没有指定关于实现本身的确切规则,所以我将每个块分成 8 个字节。如果用户请求超过 8 个字节,我将无法提供,但如果用户请求少于 8 个字节(但 > 0),那么我将提供额外的内存。如果传入的内存量不能被 8 整除,那么最后会浪费内存,我认为这比使用比您提供的更多内存要好得多。

0 投票
2 回答
313 浏览

c++11 - 连续存储容器和移动语义

一个容器如何既是连续的又支持移动语义呢?

std::vector 的示例:当 push_back() 使用 std::move 对左值调用时:

obj 和 obj2 不一定在内存中彼此相邻分配。现在由于向量必须将其元素放在连续的内存中,在这种情况下移动语义将如何工作?在我看来,它必须将 obj2 复制到向量 v 的连续内存区域(在 obj 旁边),否则将无法满足连续性要求。但这需要一个副本,而不是移动。那么上面和这个有什么区别呢?: