- 博客(13)
- 收藏
- 关注
原创 .260. Single Number III
class Solution {public: vector singleNumber(vector& nums) { int result=0; for(auto n : nums) result^=n; result=~(result-1)&result; vector ret={0,0};
2016-08-30 16:01:34 337
原创 .371. Sum of Two Integers
class Solution {public: int getSum(int a, int b) { while(b) //直到没有进位 { int c=a^b; //先不管进位 b=(a&b)<<1; //进位 a=c; //到这里:相当于a为一个值,b为进位值。
2016-08-22 22:49:49 327
原创 283. Move Zeroes
class Solution {public: void moveZeroes(vector& nums) { int first=0; while(first<nums.size()&&nums[first]) first++; int second=first+1; while(1)
2016-08-30 17:07:53 376
原创 226. Invert Binary Tree
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */clas
2016-08-30 15:07:36 304
原创 389. Find the Difference
class Solution {public: char findTheDifference(string s, string t) { /*vector count(26,0); for(int i=0;i<s.size();i++) count[s[i]-'a']++; for(int i=0;i<t.size(
2016-08-30 11:04:43 380
原创 167. Two Sum II - Input array is sorted
class Solution {public: vector twoSum(vector& numbers, int target) { int i=0; int j=numbers.size()-1; while(1) { int sum=numbers[i]+numbers[j];
2016-08-30 09:51:27 383
原创 104. Maximum Depth of Binary Tree
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */clas
2016-08-30 09:36:56 415
原创 258. Add Digits
class Solution {public: int addDigits(int num) { return num-(num-1)/9*9; //return num?1+(num-1)%9:0; //return 1+(num-1)%9; //-1%9=-1 }};
2016-08-23 00:24:24 288
原创 136. Single Number
class Solution {public: int singleNumber(vector& nums) { int result=0; for(auto iter=nums.begin();iter!=nums.end();iter++) result^=*iter; return result; }
2016-08-22 22:59:53 314
原创 292. Nim Game
//如果是4的倍数,无论第一个人取?个,只要第二个人取(4-?)个,都是第二个人赢。所以,只要不是4的倍数,第一个人取完让剩下的是4的倍数,然后采取前面的策略就一定赢。class Solution {public: bool canWinNim(int n) { return n%4?true:false; }};
2016-08-22 21:35:14 339
原创 338. Counting Bits
//原理:2(1*2+0)就是在1的二进制表示后面加0(即和1的位数相同),3(1*2+1)就是在1的二进制表示后面加1(即比1的位数多1),4(2*2+0)就是在2的二进制表示后面加0(即和2的位数相同),5(2*2+1)就是在2的二进制表示后面加1(即比2的位数多1),以此类推。class Solution {public: vector countBits(int num) {
2016-08-22 18:47:45 330
原创 344. Reverse String
class Solution {public: string reverseString(string s) { reverse(s.begin(),s.end()); return s; /*char temp; int left=0; int right=s.size()-1;
2016-08-22 17:52:58 348
原创 计算机网络知识点汇总
1.小端:低字节在低地址。大端:高字节在低地址。我们知道网络上的数据流是字节流,对于一个多字节数值,在进行网络传输的时候,先传递哪个字节?也就是说,当接收端收到第一个字节的时候,它是将这个字节作为高位还是低位来处理呢?网络字节序(大端):收到的第一个字节被当作高位看待,这就要求发送端发送的第一个字节是高位。而在发送端发送数据时,发送的第一个字节是该数字在内存中起始地址(低地址)对应
2016-08-05 19:02:03 720
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人