编程题
lyh_xd
一匹正在努力提高算法、编程水平的机器学习马
展开
-
层次打印二叉树
有一棵二叉树,请设计一个算法,按照层次打印这棵二叉树。 给定二叉树的根结点root,请返回打印结果,结果按照每一层一个数组进行储存,所有数组的顺序按照层数从上往下,且每一层的数组内元素按照从左往右排列。原创 2016-04-26 11:16:19 · 525 阅读 · 0 评论 -
Leetcode 83. Remove Duplicates from Sorted List
Given a sorted linked list, delete all duplicates such that each element appear only once.For example, Given 1->1->2, return 1->2. Given 1->1->2->3->3, return 1->2->3.原创 2016-05-23 20:41:06 · 249 阅读 · 0 评论 -
路灯最小发光距离
题目描述 V先生有一天工作到很晚,回家的时候要穿过一条长l的笔直的街道,这条街道上有n个路灯。假设这条街起点为0,终点为l,第i个路灯坐标为ai。路灯发光能力以正数d来衡量,其中d表示路灯能够照亮的街道上的点与路灯的最远距离,所有路灯发光能力相同。为了让V先生看清回家的路,路灯必须照亮整条街道,又为了节省电力希望找到最小的d是多少?输入 输入两行数据,第一行是两个整数:路灯数目n (1≤n≤10原创 2016-09-17 16:26:25 · 720 阅读 · 0 评论 -
二进制中1的个数
面试官的手机被他调皮的儿子小明用一个数字作为密码锁上了。 小明只记得这个数字的十进制范围是l~r,且这个数的二进制表示中恰有m个1,却不记得确切的数字了。 面试官可急坏了。这才有了小赛一个将功赎过的机会。 他想要让小赛算出,他最坏情况下,要试多少次密码才能确保打开手机呢? 请输出这个次数。 输出 : 输出一行,包含一个整数,表示面试官最坏情况下,要试多少次密码才能确保打开手机。 如果小原创 2016-09-16 21:12:47 · 386 阅读 · 0 评论 -
第n天股票价格
经过严密的计算,小赛买了一支股票,他知道从他买股票的那天开始,股票会有以下变化:第一天不变,以后涨一天,跌一天,涨两天,跌一天,涨三天,跌一天…依此类推。 为方便计算,假设每次涨和跌皆为1,股票初始单价也为1,请计算买股票的第n天每股股票值多少钱?#include<iostream>using namespace std;int main(){ int n; while (ci原创 2016-09-16 19:59:40 · 2035 阅读 · 0 评论 -
删除字符串末尾所有空格
删除字符串末尾的所有空格。注意使用 char[ ] 是数组,用栈存储,可以修改其中元素。而 char* ,string 是字符串常量,在静态存储区,不可修改。另外 strlen 是函数,只能处理 char* 数据,返回的的元素个数不包含结束符 NULL(‘\0’).#include<iostream>using namespace std;char* rtrim(char* str){原创 2016-09-16 15:49:31 · 3906 阅读 · 0 评论 -
腾讯-找出两个数组中少掉的一个元素
16年腾讯秋招软开第一道编程题(去掉了繁琐的输入要求)。题目大意是给定两个数组,第一个有 n 个元素,第二个有 n-1 个元素,两个数组区别除了少一个元素其他一样。找出少掉的这个元素。主要是注意 find 函数和vector 的 erase 函数。#include<iostream>#include<vector>using namespace std;int main(){ int原创 2016-09-08 09:03:34 · 787 阅读 · 0 评论 -
字符串查找、排序
将第一行中含有第二行中“23”的数输出并排序输入第一行数字:123 423 5645 875 186523在输入第二行中:23将将一行中含有第二行中“23”的数字输出并排序结果即:123 423 186523#include<iostream>#include<string>#include<vector>#include<sstream>#include<algorithm>using原创 2016-07-12 11:38:27 · 415 阅读 · 0 评论 -
最短排序
对于一个无序数组A,请设计一个算法,求出需要排序的最短子数组的长度。 给定一个整数数组A及它的大小n,请返回最短子数组的长度。测试样例: [1,5,3,4,2,6,7],7原创 2016-04-27 21:35:29 · 281 阅读 · 0 评论 -
矩阵顺时针旋转90度
有一个NxN整数矩阵,请编写一个算法,将矩阵顺时针旋转90度。 给定一个NxN的矩阵,和矩阵的阶数N,请返回旋转后的NxN矩阵,保证N小于等于300。测试样例: [[1,2,3],[4,5,6],[7,8,9]],3 返回:[[7,4,1],[8,5,2],[9,6,3]]原创 2016-04-27 12:07:07 · 5055 阅读 · 0 评论 -
输出纸片折痕方向
请把纸条竖着放在桌上,然后从纸条的下边向上对折,压出折痕后再展 开。此时有1条折痕,突起的方向指向纸条背面,这条折痕叫做“下”折痕;突起的方向向指向纸条正面的折痕叫做“上”折痕。如果每次都从下边向上边对折,对折N次。请从上到下计算出所有折痕的方向。 给定折的次数 n ,请返回从上到下的折痕的数组,若为下折痕则对应元素为”down”,若为上折痕则为”up”.思路:动手折一下就可以发现规律:n=1时,原创 2016-04-26 23:00:20 · 432 阅读 · 0 评论 -
猴子选大王
问题描述:n 只猴子要选大王,选举办法如下:所有猴子按1,2……n 编号围成一圈,从第一号开始顺序 1,2……m, 凡是报 m 号的退出圈外,如此循环报数直到圈内只剩一只猴子时这只猴子就是大王。思路:利用单向循环链表模拟此过程,输出选出的大王编号。原创 2016-04-26 21:00:13 · 429 阅读 · 0 评论 -
检测旋转词
如果对于一个字符串A,将A的前面任意一部分挪到后边去形成的字符串称为A的旋转词。比如A="12345",A的旋转词有"12345","23451","34512","45123"和"51234"。对于两个字符串A和B,请判断A和B是否互为旋转词。给定两个字符串A和B及他们的长度lena,lenb,请返回一个bool值,代表他们是否互为旋转词。原创 2016-04-26 16:29:23 · 384 阅读 · 0 评论 -
迅雷笔试之-纸牌游戏有牛无牛
今日迅雷笔试题一:给定5张牌(除大小王),J/Q/K代表10,A代表1,其他数字还是对应数字。5张牌中有三张加起来是10的倍数就叫有牛,任意三张加起来都不等于10就叫无牛。有牛的情况下,剩余两张加起来的和的个位数为牛数,比如4+7则牛数为1。输入要求:五张牌以逗号分隔输入;输出要求:无牛和输入错误的情况输出“none”,有牛的情况下输出牛数。#include<iostream>#include<m原创 2016-09-20 09:55:26 · 573 阅读 · 0 评论