2 jk851617453 JK851617453 于 2017.08.28 22:30 提问

关于大学C++课设上的一点小问题 40C

图片说明
问题如图所示
1、题目要求构建链表,我初步构想如图图片说明
那这样该怎样进行查找,还是有更好的办法?
2、结构体二维数组是否会更好?
3、随时间增长的随机函数该如何操作?

2个回答

what951006
what951006   Rxr 2017.08.29 09:33

1,你的想法没有问题,构建链表的话就自己构建一个链表
2,结构体二维数组?我没有理解到你的意思,但原理就是一个二组数组的概念
3,随机函数?使用win库函数的随机函数即可。读题目可能是随机长多少肉吧

alisonyu
alisonyu   2017.09.01 15:56

1、猪圈之间可以用链表来连接,考虑到猪圈数量不多,可以直接遍历来寻找,每一猪圈节点存储猪圈相关信息。
2、按目前题主的架构,要寻找某只猪只能遍历每个节点进行比较,时间复杂度为O(n)
2、建议 猪圈与猪之间可以用二叉树(二叉树也是链表实现的,因此符合题意),为每一只猪分配一个Id,利用二叉树进行增删查改,时间复杂度为O(log2(n)) (直观来说1024头猪寻找一头猪最多只需要10次比较)。

alisonyu
alisonyu 最后一点因为3、
3 个月之前 回复
alisonyu
alisonyu 如果题主还未学习二叉树,可以查看 http://www.cnblogs.com/vamei/archive/2013/03/17/2962290.html
3 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片