编程之美——数组循环移位 题目:设计一个算法,把一个含有N个元素的数组循环右移K位,要求时间复杂度为0(N),且只允许使用两个附加变量。 具体分析请见《编程之美》这本书,下面就直接给出代码。 // xunhuan.cpp…
标签:编程之美
编程之美——电话号码对应英语单词
编程之美——电话号码对应英语单词 电话号码盘一般可以用于输入字母。如用2可以输入A,B,C,用3可以输入D,E,F等… 问题1:可以根据这样的对应关系设…
编程之美——最短摘要的生成
编程之美——最短摘要的生成 题目: 最短摘要的生成,具体见《编程之美》这本书。 分析: 先来看看这些序列: w0,w1,w2,w3,q0,w4,w5,q1,w6,w…
编程之美——区间重合判断
编程之美——区间重合判断 一. 问题: 1. 给定一个源区间[x,y]和N个无序的目标区间[x1,y1] [x2,y2] … [xn,…
编程之美——快速找出故障机器
编程之美——快速找出故障机器 题目:假设一个机器只存储一个标号为ID的记录,假设每份数据保存2个备份,这样就有2个机器存储了相同的数据。其中ID是小于10亿的整数 问题1、在某个时间,如果得到一个数据文件ID的列表。是否…
编程之美-----高效率地安排见面会
编程之美—-高效率地安排见面会 某一天,在微软亚洲研究院有N个面试要进行,它们的时间分别为(B[i], E[i])(B[i]为面试开始时间,E…
编程之美——双线程高效下载
编程之美——双线程高效下载 一,题目 网络上下载数据,然后存储到硬盘上。简单做法是:先下载一块然后写到硬盘,然后再下载,再写到硬盘上。 …
编程之美——NIM(1)一排石头的游戏
编程之美——NIM(1)一排石头的游戏 NIM(1)一排石头的游戏这个问题书上讲解的已经很详细了,特此不讲了,可以参考《编程之美》。 &nb…
编程之美——NIM(2) “拈”游戏分析
编程之美——NIM(2) “拈”游戏分析 问题: 有N块石头和两个玩家A和B,玩家A先将石头随机分成若干堆,然后按照BABA…的顺序不断轮流取石头,能将剩下的石头一次取光的玩家获胜,每次取石头时,每个玩家只能…
编程之美——连连看游戏设计
编程之美——连连看游戏设计 1 问题描述及分析 连连看游戏是一种很流行的小游戏,记得在小时候去游戏厅玩街机的时候就有两台专门的连连看的机器(当然当时不叫这个名字),一个是连麻将牌、另一个是连水果图片。当时的麻将…
编程之美----俄罗斯方块
编程之美—-俄罗斯方块 问题: 让电脑自动下俄罗斯方块游戏。 解法: 对当前的积木块,枚举它旋转后的每一个形状从每一列落下的棋盘,将该棋盘和前一个棋盘进行对比,并打分,最后取得分最高的那个形状和那一列作为电脑…
编程之美-二分查找练习题
//查找任意一个i,使得arr[i]等于v,不存在返回-1 int bsearch_any_i(int arr[],int l,int r,int v){ int left=l,right=r; while(left&l…