小编Koz*_*oss的帖子

D:如何创建一个新的空二进制堆来存储整数?

我对如何正确使用Binary Heap提供的内容感到有点困惑std.container.更具体地说,我想创建一个最大的整数堆,所以我尝试写

auto maxHeap = BinaryHeap!int();

并得到一个关于int不能用[]切片的编译器投诉.我试图在Phobos上阅读它的文档,但我不明白如何创建一个新的,空的二进制堆,旨在存储整数.

有人可以借给我一个手吗?

containers d binary-heap

1
推荐指数
1
解决办法
299
查看次数

clojure.java.sh:没有这样的文件或目录

我编写了一个程序来组装.dot文件,并希望使用Clojure sh来提供编译命令.具体来说,我使用以下函数来执行此操作:

(defn compile-graphviz
  "Dumps graphviz-string to a file, then compiles it using dot."
  [graphviz-string]
  (do
    (spit "./tree.dot" graphviz-string)
    (sh "dot -Tpng \"/.tree.dot\" -o\"/.tree.png\"")))
Run Code Online (Sandbox Code Playgroud)

但是,当我运行它时,第二部分失败,在REPL上给出以下错误消息:

IOException error=2, No such file or directory  java.lang.UNIXProcess.forkAndExec (UNIXProcess.java:-2)
Run Code Online (Sandbox Code Playgroud)

我查看了文档sh和示例,我无法理解为什么这不起作用.我错过了什么?

shell clojure graphviz

1
推荐指数
1
解决办法
577
查看次数

这个C递归结构会正确解除分配吗?

假设我有一个标准的链表结构如下:

struct Linked {
    int data;
    Linked* next;
}
Run Code Online (Sandbox Code Playgroud)

我通过指针足够的内存来存储另一个并初始化它,calloc从而在循环中制作了一堆它们.根据链表的规范,我只维护一个指向第一个节点的指针,如下所示:nextLinked

struct Linked *first = make_list();
Run Code Online (Sandbox Code Playgroud)

现在,我想释放整个列表所占用的内存.我可以打电话吗?

free(first);
Run Code Online (Sandbox Code Playgroud)

让它释放所有内存(包括分配给所有next指针的内存),还是我必须从后端重新分配?

c free struct linked-list

1
推荐指数
1
解决办法
143
查看次数

用户定义的最小和最大函数的奇怪行为

我正在写一个树状的,作为其中的一部分,我需要它有两个函数,它们都返回一个指针:一个用于创建叶节点,另一个用于创建内部节点.我的头文件如下:

#ifndef NODE_H
#define NODE_H
#include<stdint.h>

typedef uint32_t Number;

typedef struct Node
{
Number val, height;
struct Node *left, *right, *parent;
} Node;

//makes leaves
Node* make_node (Number);

//makes internal nodes
Node* make_internal (Node*, Node*);

//you'll see why we need these
inline Number num_min(Number, Number);

inline Number num_max(Number, Number);

#endif
Run Code Online (Sandbox Code Playgroud)

实施如下:

#include "node.h"
#include <stdlib.h>

inline Number num_min(Number a, Number b) {
  return (a < b) ? a : b;
}

inline Number num_max(Number a, Number b) {
  return (a …
Run Code Online (Sandbox Code Playgroud)

c c99

0
推荐指数
1
解决办法
53
查看次数

标签 统计

c ×2

binary-heap ×1

c99 ×1

clojure ×1

containers ×1

d ×1

free ×1

graphviz ×1

linked-list ×1

shell ×1

struct ×1