摘要:
反转二进制 阅读全文
摘要:
求相交矩形的面积 阅读全文
摘要:
找出是否存在nums[i]==nums[j],使得 j - i <=k 这是map的一个应用 阅读全文
摘要:
判断一个数独是否合法,即数独的每一行,每一列的数字不能有重复,每一个3*3的小数独中的数字不能有重复。 1 class Solution { 2 public: 3 bool isValidSudoku(vector<vector<char> > &board) { 4 int rowValid[1 阅读全文
摘要:
合并有序数组 时间复杂度O(m+n) 该算法来自各种算法与数据结构书,写得已经烂得不能再烂了,这个应该是最短的代码了吧,不知如何归类 1 class Solution { 2 public: 3 void merge(vector<int>& nums1, int m, vector<int>& n 阅读全文
摘要:
找出链表的交点, 如图所示的c1, 如果没有相交返回null. A: a1 → a2 ↘ c1 → c2 → c3 ↗ B: b1 → b2 → b3 我的方法是: (1)统计两个链表的长度 (2)移动较长的链表的表头,使得让两个链表的长度一致 (3)从修正后的表头出发对比两个链表的节点是否一致,输 阅读全文
摘要:
找出最短的从叶子到根的路径长 可以回忆Maximum Depth of Binary Tree的写法,只不过在!root,我把它改成了10000000,还有max函数改成了min函数,最后的值如果是10000000,毫无疑问这棵树肯定为空,因此在最后有(d>=1000000)?0:d; 1 /** 阅读全文
摘要:
用两个队列去实现栈,这里我使用了队列数组q[2],在所有的过程中保证一个队列是空的 push时插入到空的队列中,然后将队列中的元素移到另一个队列中 pop时从不空的队列中pop() peek时从不空的队列中取出front() 1 class Stack { 2 public: 3 queue<int 阅读全文
摘要:
判断一个数是否是回文数 方法是将数回转,看回转的数和原数是否相同 1 class Solution { 2 public: 3 bool isPalindrome(int x) { 4 if(x < 0) return false; 5 int _x = 0 ; 6 int n = x; 7 for 阅读全文
摘要:
二叉树的从叶子到根的和是否存在 1 /** 2 * Definition for binary tree 3 * struct TreeNode { 4 * int val; 5 * TreeNode *left; 6 * TreeNode *right; 7 * TreeNode(int x) : 阅读全文