LeetCode
XiaoxinMiiii
这个作者很懒,什么都没留下…
展开
-
LeetCode 刷题
1 题目描述: Consider the string s to be the infinite wraparound string of “abcdefghijklmnopqrstuvwxyz”, so s will look like this: “…zabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcd….”.Now we h...原创 2018-05-19 17:20:12 · 141 阅读 · 0 评论 -
leetcode-32位整数反转并检查溢出
int reverse(int x) { int x_re = 0; while(abs(x/10) > 0) { if(isOverflowInt(x_re, x%10)) return 0; x_re = x_re*10 + x%10; x /= 10; } if(isOver...原创 2018-07-09 14:42:31 · 639 阅读 · 0 评论 -
检查回文字符串
bool isPalindrome(string s) { int s_len = s.length(); bool is = true; for(int i = 0, j = s_len-1; i<s_len && j>=0;){ //大小写统一; s[i] = s[i]&...原创 2018-07-18 12:29:46 · 245 阅读 · 0 评论 -
leetcode-方阵原地转置
最近刷题,虽然刷题的效率还是比较低,但是最近的测试耗时居然超过了99%的用户,还是比较开心的,如何才能让思路更快呢?如何才能不依赖IDE调试就直接写出合适的算法呢?这是应该多思考的问题。 不讲多余的话了: 给定N*N的方阵,要求不另外开辟内存,直接在原矩阵上对方阵转置。 代码如下:void rotate(std::vector<std::vector<int>>...原创 2018-07-14 13:30:23 · 628 阅读 · 0 评论 -
关于爬楼梯的方法问题-共n级,每次爬a或b级,请问有多少种爬法?
Q:关于爬楼梯的方法问题-共n级,每次爬a或b级,请问有多少种爬法? 分析:这个问题之前绞尽脑汁,写了一天都没有勉强可以运行,但是当n过大的时候,容易出现内存溢出的情况,昨天休息的时候思考了一下,觉得应该用递归可以很简单的写出来。今天试了一下,果然如此,3分钟搞定。思路要灵活,不能钻牛角尖。class Solution {public: int climbStairs(int ...原创 2018-08-04 11:04:46 · 1572 阅读 · 1 评论 -
二叉树层次遍历后输出 c++
这个必须得记录一下,尝试了一上午,经过n次的timeout之后结果,也没有找到前人合适的code。给定一个二叉树,返回其按层次遍历的节点值。 (即逐层地,从左到右访问所有节点)。/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * ...原创 2018-08-01 13:17:18 · 1717 阅读 · 0 评论 -
查找给定数组的非相邻元素子集的和的最大值
打家劫舍问题:只能抢非相邻家庭,数组中的值表示的是到每家可以抢到的财产数量,动态规划求出最大抢劫数量。 好难想,��呐,感觉要秃顶了。拥有这种思路的人真的是思路灵活的天才呐。int rob(vector<int>& nums){ int length = nums.size(); if(!length) return 0; ...原创 2018-08-07 16:52:06 · 477 阅读 · 0 评论 -
有序数组转为平衡搜索二叉树
说明: 将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树。本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1。示例:给定有序数组: [-10,-3,0,5,9],一个可能的答案是:[0,-3,9,-10,null,5],它可以表示下面这个高度平衡二叉搜索树: 0 / \-3 9 / / -10 ...原创 2018-08-03 11:27:17 · 779 阅读 · 0 评论