文心一言 VS 讯飞星火 VS chatgpt (55)-- 算法导论6.3 1题

一、参照图6-3 的方法,说明 BUILD-MAX-HEAP在数组 A=(5,3,17,10,84,19,6,22,9)上的操作过程。

文心一言:

下面是 BUILD-MAX-HEAP 在数组 A = (5, 3, 17, 10, 84, 19, 6, 22, 9) 上的操作过程:

1.创建一个空堆,将数组中的第一个元素 5 作为根节点,将其加入堆中。

2.将数组中的第二个元素 3 与其子节点 5 比较,由于 3 小于等于 5,因此不需要交换位置,继续将下一个元素 17 加入堆中。

3.将数组中的第四个元素 10 与其子节点 17 比较,由于 10 大于等于 17,因此不需要交换位置,继续将下一个元素 84 加入堆中。

4.将数组中的第五个元素 19 与其子节点 84 比较,由于 19 大于等于 84,因此不需要交换位置,继续将下一个元素 6 加入堆中。

5.将数组中的第六个元素 6 与其子节点 19 比较,由于 6 小于等于 19,因此不需要交换位置,继续将下一个元素 22 加入堆中。

6.将数组中的第七个元素 22 与其子节点 6 比较,由于 22 大于等于 6,因此不需要交换位置,继续将下一个元素 9 加入堆中。

7.将数组中的最后一个元素 9 与其子节点比较,由于其子节点已经超出了数组的范围,因此不需要交换位置。

通过这些操作,BUILD-MAX-HEAP 在数组 A 上创建了一个最大堆。

讯飞星火:

因为数组A中的最大值是84,所以要比较的数共有9个。

对于第1次操作,$k=10$,即把10与A中第1个元素5比较,因为$10>5$,所以将10与A中第1个元素交换,得A=

(10,5,3,17,10,84,19,6,22,9).

因为$k=17$,即把17与A中第2个元素3比较,因为$17>3$,所以将17与A中第2个元素交换,得A=

(10,5,3,17,10,84,19,6,22,9).

因为$k=84$,即把84与A中第3个元素17比较,因为$84>17$,所以将84与A中第3个元素交换,得A=

(10,5,3,84,10,17,9,22,6,19).

因为$k=9$,即把9与A中第4个元素22比较,因为$9< 22$,所以继续循环。

对于第2次操作,$k=9$,即把9与A中第5个元素6比较,因为$9< 6$,所以继续循环。

对于第3次操作,$k=6$,即把6与A中第6个元素22比较,因为$6< 22$,所以继续循环。

对于第4次操作,$k=22$,即把22与A中第7个元素19比较,因为$22>19$,所以将22与A中第7个元素交换,得A=

(10,5,3,84,10,17,9,6,22,19).

因为$k=17$,即把17与A中第8个元素9比较,因为$17>9$,所以将17与A中第8个元素交换,得A=

(10,5,3,84,10,9,17,6,22,19).

因为$k=5$,即把5与A中第9个元素3比较,因为$5>3$,所以将5与A中第9个元素交换。得A=

(10,5,3,84,9,10,17,6,22,19)。

360智脑:

在数组A=(5,3,17,10,84,19,6,22,9)上执行 BUILD-MAX-HEAP操作的过程如下所示:

1.首先将第一个元素5作为当前最大堆的根节点,并将其标记为已访问。

2.然后从第二个元素3开始遍历整个数组。如果当前元素大于或等于当前最大堆的根节点(即5),则将该元素插入到最大堆中并更新最大堆的根节点。否则,继续遍历下一个元素。

3.当遍历完所有元素后,最大堆中的元素个数即为该数组的最大堆大小。此时,最大堆的大小为7个元素(其中最大的元素为84)。

4.最后,将最大堆中的元素按照从小到大的顺序输出即可得到最终结果。

希望以上回答能对您有所帮助!如果您还有其他问题需要解答,请随时提问。

chatglm:

BUILD-MAX-HEAP 是建立最大堆的算法,它将一个无序数组构建成一个最大堆。在最大堆中,每个节点的值都大于或等于其子节点的值。

现在我们用 BUILD-MAX-HEAP 算法对数组 A=(5,3,17,10,84,19,6,22,9) 进行操作。

1.首先,将数组 A 中的第一个元素 5 作为堆顶元素。

2.然后,依次将数组 A 中的其他元素加入堆中,按照最大堆的性质进行调整。

3.添加 3 到堆中,由于 3 比堆顶元素 5 小,所以将 3 放在堆底。

4.添加 17 到堆中,由于 17 比堆顶元素 5 大,所以将 17 放在堆顶,将 5 放到堆底。

5.添加 10 到堆中,由于 10 比堆顶元素 17 小,所以将 10 放在堆底。

6.添加 84 到堆中,由于 84 比堆顶元素 17 大,所以将 84 放在堆顶,将 17 放到堆底。

7.添加 19 到堆中,由于 19 比堆顶元素 84 小,所以将 19 放在堆底。

8.添加 6 到堆中,由于 6 比堆顶元素 19 小,所以将 6 放在堆底。

9.添加 22 到堆中,由于 22 比堆顶元素 19 大,所以将 22 放在堆顶,将 19 放到堆底。

10.添加 9 到堆中,由于 9 比堆顶元素 22 小,所以将 9 放在堆底。

经过以上步骤,数组 A 就被构建成了一个最大堆。

通义千问:

以下是使用BUILD-MAX-HEAP对数组A进行操作的过程:

1.首先,将数组A的元素从左到右排序,得到(5, 3, 17, 10, 6, 19, 84, 22)。

2.然后,取数组长度的一半,得到(5, 3, 9, 10, 6, 19, 17, 84, 22)。

3.将数组长度的一半作为堆的高度,即h=4。

4.从最后一个元素开始,向前遍历数组,将每个元素放入堆中。

5.放置第一个元素(5)时,由于其大于等于堆的高度,因此将其直接放入堆中。

6.接下来,放置第二个元素(3)。由于其小于堆的高度,因此将其放在堆顶。

7.放置第三个元素(9)时,由于其大于等于堆的高度,因此将其直接放入堆中。

8.放置第四个元素(10)时,由于其大于等于堆的高度,因此将其直接放入堆中。

9.放置第五个元素(6)时,由于其大于等于堆的高度,因此将其直接放入堆中。

10.放置第六个元素(19)时,由于其小于堆的高度,因此将其放在堆顶。

11.放置第七个元素(17)时,由于其小于堆的高度,因此将其放在堆顶。

12.放置第八个元素(84)时,由于其大于等于堆的高度,因此将其直接放入堆中。

13.放置第九个元素(22)时,由于其小于堆的高度,因此将其放在堆顶。

14.此时,堆的结构为(5, 3, 9, 10, 6, 19, 17, 84, 22),符合题目要求。

因此,BUILD-MAX-HEAP操作完成。

chatgpt:

BUILD-MAX-HEAP在数组 A=(5,3,17,10,84,19,6,22,9)上的操作过程如下:

1.从底部第一个非叶子节点开始,即节点索引为 (n/2)-1 = (9/2)-1 = 3,其中 n 是数组 A 的长度。

2.从该节点开始往上依次进行以下步骤:

a.每次选择当前节点和其两个子节点中的最大值进行交换,以确保当前节点的值是其子树中的最大值。

b.继续向上,重复步骤 a,直至达到根节点为止。

具体操作过程如下:

1.初始最大堆:

(5,3,17,10,84,19,6,22,9)

2.对节点索引为 3 进行操作:

(5,3,17,22,84,19,6,10,9)

3.对节点索引为 2 进行操作:

(5,3,84,22,17,19,6,10,9)

4.对节点索引为 1 进行操作:

(5,22,84,3,17,19,6,10,9)

5.对节点索引为 0 进行操作:

(84,22,19,3,17,5,6,10,9)

最后得到的最大堆为:(84,22,19,3,17,5,6,10,9)。

文心一言 VS 讯飞星火 VS chatgpt (55)-- 算法导论6.3 1题的更多相关文章

  1. 【对比】文心一言对飚ChatGPT实操对比体验

    前言 缘由 百度[文心一言]体验申请通过 本狗中午干饭时,天降短信,告知可以体验文心一言,苦等一个月的实操终于到来.心中这好奇的对比心理油然而生,到底是老美的[ChatGPT]厉害,还是咱度娘的[文心 ...

  2. 【个人首测】百度文心一言 VS ChatGPT GPT-4

    昨天我写了一篇文章GPT-4牛是牛,但这几天先别急,文中我测试了用GPT-4回答ChatGPT 3.5 和 Notion AI的问题,大家期待的图片输入也没有出现. 昨天下午百度发布了文心一言,对标C ...

  3. 文心一言,通营销之学,成一家之言,百度人工智能AI大数据模型文心一言Python3.10接入

    "文心"取自<文心雕龙>一书的开篇,作者刘勰在书中引述了一个古代典故:春秋时期,鲁国有一位名叫孔文子的大夫,他在学问上非常有造诣,但是他的儿子却不学无术,孔文子非常痛心 ...

  4. 获取了文心一言的内测及与其ChatGPT、GPT-4 对比结果

    百度在3月16日召开了关于文心一言(知识增强大语言模型)的发布会,但是会上并没现场展示demo.如果要测试的文心一言 也要获取邀请码,才能进行测试的. 我这边通过预约得到了邀请码,大概是在3月17日晚 ...

  5. 百度生成式AI产品文心一言邀你体验AI创作新奇迹:百度CEO李彦宏详细透露三大产业将会带来机遇(文末附文心一言个人用户体验测试邀请码获取方法,亲测有效)

    目录 中国版ChatGPT上线发布 强大中文理解能力 智能文学创作.商业文案创作 图片.视频智能生成 中国生成式AI三大产业机会 新型云计算公司 行业模型精调公司 应用服务提供商 总结 获取文心一言邀 ...

  6. 阿里版ChatGPT:通义千问pk文心一言

    随着 ChatGPT 热潮卷起来,百度发布了文心一言.Google 发布了 Bard,「阿里云」官方终于也宣布了,旗下的 AI 大模型"通义千问"正式开启测试! 申请地址:http ...

  7. 基于讯飞语音API应用开发之——离线词典构建

    最近实习在做一个跟语音相关的项目,就在度娘上搜索了很多关于语音的API,顺藤摸瓜找到了科大讯飞,虽然度娘自家也有语音识别.语义理解这块,但感觉应该不是很好用,毕竟之前用过百度地图的API,有问题也找不 ...

  8. android用讯飞实现TTS语音合成 实现中文版

    Android系统从1.6版本开始就支持TTS(Text-To-Speech),即语音合成.但是android系统默认的TTS引擎:Pic TTS不支持中文.所以我们得安装自己的TTS引擎和语音包. ...

  9. android讯飞语音开发常遇到的问题

    场景:android项目中共使用了3个语音组件:在线语音听写.离线语音合成.离线语音识别 11208:遇到这个错误,授权应用失败,先检查装机量(3台测试权限),以及appid的申请时间(35天期限), ...

  10. 初探机器学习之使用讯飞TTS服务实现在线语音合成

    最近在调研使用各个云平台提供的AI服务,有个语音合成的需求因此就使用了一下科大讯飞的TTS服务,也用.NET Core写了一个小示例,下面就是这个小示例及其相关背景知识的介绍. 一.什么是语音合成(T ...

随机推荐

  1. Chromium GPU资源共享

    资源共享指的是在一个 Context 中的创建的 Texture 资源可以被其他 Context 所使用.一般来讲只有相同 share group Context 创建的 Texture 才可以被共享 ...

  2. Godot - 创建翻译文件(常量表)

    版本 Godot 3.1.2 背景 Godot的UI系统封装的很难受, 一些东西很难改动, 比如这个AcceptDialog的"确定""取消"按钮, 特别是在编 ...

  3. codeforces #865 div1A

    A. Ian and Array Sorting 思路:首先我们可以从前往后做一遍,把除了最后一个元素其他所有数都变成和第一个数一样的数,然后假如前n-1个数个数为偶数,这样我们分组进行操作,一定可以 ...

  4. `.NET Web`新人入门必学项目`EarthChat`

    .NET Web新人入门必学项目EarthChat EarthChat是一个基于.NET 7的实战项目,EarthChat提供了很多的最佳实践,EarthChat的目标也是成为一个很多人都喜欢的大型聊 ...

  5. Java 基础学习第二弹

    1. HashMap和HashT able的区别 HashMap和Hashtable是两种常见的哈希表数据结构,它们在实现上有一些区别. 线程安全性:Hashtable是线程安全的,而HashMap不 ...

  6. 当代免疫学小史-第一章(根据讲谈社Blue Backs系列2009年第一版第三次印刷版本翻译)

    作者 -岸本忠三:前大阪大学校长.IL-6发现人 -中嶋彰:科普作家 第1章 石坂往事 巴尔的摩的大雪 1970年匆匆而过,这一年举行了大阪世博会,三岛由纪夫也是在这一年切腹自杀的.1971年新年第一 ...

  7. C?C++?

    代码逆向 在这里需要注意的几个点: c#语言赋值号(=)右边的值同样会跟着左边的值改变,如array6=array2,array6+=2:这个时候array2也会变 如array7[num5] +=  ...

  8. TypeScript学习小结:基础使用

    TypeScript学习小结:基础使用 某册子买了两年多了,到最近才开始学习TypeScript,拖延症的严重症状了:不过我还是深信人做一件事是需要一个契机的. 学完之后整体感受是:TypeScrip ...

  9. 02Java学习_注意事项和学习方法

    02_Java 开发注意事项细节和学习方法 目录 02_Java 开发注意事项细节和学习方法 注意事项 学习方法 注意事项 .java 是 Java 文件的拓展名.源文件的基本组成部分是类--clas ...

  10. freeswitch的一个性能问题

    概述 freeswitch是一款简单好用的VOIP开源软交换平台. 在fs的使用过程中,会遇到各种各样的问题,各种问题中,性能问题是最头疼的. 最近在测试某些场景的时候,压测会造成fs的内存占用持续升 ...