摘要: 题目描述 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 思路:n&(n-1)可将n的二进制中最后一个1变为0 class Solution { public: int NumberOf1(int n) { int count=0; while(n) { n=n&(n-1); ++ 阅读全文
posted @ 2017-12-21 16:56 jeysin 阅读(91) 评论(0) 推荐(0) 编辑
摘要: 题目描述 地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子。 例如,当k为18时,机器人能够进入方格(35,37),因为3+5+3+7 = 18。但是,它不能进入方格(35,38),因为3+ 阅读全文
posted @ 2017-12-21 15:21 jeysin 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 题目描述 请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子。如果一条路径经过了矩阵中的某一个格子,则该路径不能再进入该格子。 例如 a b c e s f c s a d e e 矩阵 阅读全文
posted @ 2017-12-21 12:11 jeysin 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0 思路:二分法 阅读全文
posted @ 2017-12-21 10:32 jeysin 阅读(117) 评论(0) 推荐(0) 编辑