gpt4 book ai didi

c - C 中的滑动拼图求解器

转载 作者:太空宇宙 更新时间:2023-11-04 04:44:52 25 4
gpt4 key购买 nike

尝试从头开始构建一个c滑动拼图程序。我认为我应该使用 puzzle.h、puzzle.c、main.c 作为文件。我想使用 4 元树结构,因为最多可以进行 4 次移动。我对以下结构有一个想法:

#ifndef PUZZLE_H
#define PUZZLE_H

struct Node{

int Node *parent;
int Node *next1;
int Node *next2;
int Node *next3;
int Node *next4;
int calc_heuristic;
void *pdata; }; Node

#endif

在 main、puzzle.c 中,我如何以及在何处对 *pdata 的数组赋值进行编码?这看起来正确吗?

最佳答案

应该是

struct Node *parent;
struct Note *next1;

等等,因为您需要指向树中其他节点的指针。如果 pdata 始终是一个 3x3 数组,那么您可以通过这样声明它来省去一些麻烦,例如

int puzzleData[3][3];    // current state of the puzzle for this node

如果在编译时不知道该数组的大小,那么您必须同时为它malloc 内存Node 结构本身。

关于c - C 中的滑动拼图求解器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22264780/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com