程序员

首页 » 常识 » 问答 » 毕业10年后,我忍不住出了一份程序员的高
TUhjnbcbe - 2021/1/30 8:18:00

作者

程序员小吴

来源

五分钟学算法(ID:CXYxiaowu)

一、选择题(共计50分)

1、在下列四种排序算法,只有()是一种不稳定排序

A、冒泡排序

B、选择排序

C、插入排序

D、归并排序

2、一个数组,含有大量重复元素,使用()进行排序是一种合理的抉择

A、快速排序

B、双路快速排序

C、三路快速排序

D、希尔排序

3、杨辉三角,是二项式系数在三角形中的一种几何排列,在中国南宋数学家杨辉年所著的()一书中出现,LeetCode上第()和()就是与杨辉三角有关的题目。

A、《详解八章算法》、、

B、《详解九章算法》、、

C、《详解八章算法》、、

D、《详解九章算法》、、

4、笔者想执行某项破坏性的操作,比如快速删除系统元素,使用()方式可以帮助我更好的完成这个任务

A、二叉树的前序遍历

B、二叉树的中序遍历

C、二叉树的后序遍历

D、二叉树的层序遍历

5、在《算法导论》第二版第7章(快速排序)的思考题(第95页)中提及到一种低效的递归排序算法,Howard、Fine等教授将这个算法称为()

A、垃圾排序

B、完美排序

C、变种快速排序

D、HF排序

6、(多选)如果笔者将下面这张图里面的文章写完,将会()

A、收到律师函

B、学会打篮球

C、学会RAP

D、文章阅读十万加

7、下列哪个短语缩写不是程序员常见某些算法的简称()

A、KMP

B、MMP

C、DP

D、A*

8、有一种玻璃杯质量确定但未知,需要检测。现在有一栋层的大楼,该种玻璃杯从某一层楼扔下,刚好会碎。现给你两个杯子,问怎样检测出这个杯子的质量,即找到在哪一层楼刚好会碎?现在有一种解法是从数学方程的角度出发。假设最少尝试次数为x,那么,第一个杯子必须要从第x层扔下,因为:如果碎了,前面还有x-1层楼可以尝试,如果没碎,后面还有x-1次机会。

如果没碎,第一个杯子,第二次就可以从x+(x-1)层进行尝试,这里加上x-1,是因为当此时,第一个杯子碎了,第二个杯子还有可以从x+1到(x+(x-1)-1)层进行尝试,有x-2次机会。

如果还没碎,那第一个杯子,第三次从x+(x-1)+(x-2)层尝试。不管杯子碎或者没碎,都有x-3次尝试机会,依次类推。

那么经过x次的尝试可以确定最高的楼层为x+(x-1)+(x-2)+…+1=x(x+1)/2。请问,x是多少?

A、2

B、10

C、14

D、25

9、假设你在参加一个春节抽奖游戏,主持人在三个红包里面分别放了1块钱、1块钱和0块钱。你选中哪一个,你就可以领到对应的钱。当你选定一个红包之后,主持人独自翻开剩下两个红包,然后将有一块钱的红包给你看。此时,给你一次机会选另外一个红包。请问:应不应该换?

A、换

B、不换

C、可以换,但没必要

D、都可以

10、LeetCode第9号问题是回文数求解,它有很多种解法,下面动图的解法属于()

A、语文解法

B、数学解法

C、英语解法

D、体育解法

二、填空题(共计20分)

11、第一篇二分搜索论文是年发表,然而第一个没有bug的二分查找法却是在()年才出现,中间用了()年的时间。

12、我们常说有五大算法,它们分别是——分治算法、动态规划、()、()、分支限定。

13、印度数学奇才拉马努金(SrinivasaRamanujan)是二十世纪最传奇的数学家之一,他独立发现了近个数学公式和命题,虽然他几乎没受过正规的高等数学教育,却能凭直觉写出不平凡的定理和公式,且往往被证明是对的,他留给世人的笔记引发了后来的大量研究。

下面这张图就是他的一项发现。

请问,当k=0时,π的值为()

三、编程题(共计30分)

喜羊羊和灰太狼用几堆石子在做游戏。偶数堆石子排成一行,每堆都有正整数颗石子piles。游戏以谁手中的石子最多来决出胜负。

石子的总数是奇数,所以没有平局。喜羊羊和灰太狼轮流进行,喜羊羊先开始。每回合,玩家从行的开始或结束处取走整堆石头。

这种情况一直持续到没有更多的石子堆为止,此时手中石子最多的玩家获胜。

假设喜羊羊和灰太狼都发挥出最佳水平,当喜羊羊赢得比赛时返回true,当灰太狼赢得比赛时返回false。

现在需要你设计一个算法,来分析它们的输赢情况。

要求:请使用尽可能少的代码将下列代码补充完整,不得超过两行代码。

//

author:程序员小吴classSolution{publicbooleanstoneGame(int[]piles){//请在这里将代码补充完整}}

下附答案

征稿

参与投稿,加入作者群,成为全宇宙最优秀的技术人儿~

推荐阅读

Python从入门到精通,这篇文章为你列出了25个关键技术点(附代码)

行Python代码打造刷脸考勤系统

基础必备

Python处理文件系统的10种方法

数据可视化,还在使用Matplotlib?Plotly,是时候表演真正的技术了(附代码)

文件操作SoEasy!来,一起体验下Python的Pathlib模块~

你点的每个“在看”,我都认真当成了喜欢预览时标签不可点收录于话题#个上一篇下一篇
1
查看完整版本: 毕业10年后,我忍不住出了一份程序员的高