自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 收藏
  • 关注

原创 从安装到换主题的 5 个坑 -- 用Hexo建立自己的博客网站

第零坑jekyll太TM难配置了,特别是换主题,装了一个又一个包,结果一个依赖一个,根本装不完。所以一气之下转到了 Hexo,虽然也是猪多砍可,但是最终可以换主题第一坑很多新人都在用 Github windows桌面版,我就是,但是为了使用hexo。我建议把Github桌面版删了吧…不然各种冲突真是…第二坑git 最好安装在 非C盘,因为在使用hexo 部署的时候,你会遇到这样一个问题 File

2016-05-22 23:16:10 935

原创 36.[Leetcode]Valid Sudoku

题意:判断一个数阵是否可以数独我的解法(慢): Point:写这个我遇到了一个非常大的问题,就是关于容器的容器的初始化问题,代码中://必须要这么初始化才可以在后面使用vector<char> temp;vector<vector<char>> col(9,temp);vector<vector<char>> group(9,temp);// 要好好研究一下 vector 的初始化问题了

2016-05-19 18:12:12 286

原创 349.[Leetcode]Intersection of Two Arrays

题意:求两个数组的交集利用set的特性class Solution {public: vector<int> intersection(vector<int>& nums1, vector<int>& nums2) { set<int> s1(nums1.begin(),nums1.end()); set<int> s2(nums2.begin(),nums

2016-05-19 14:17:21 238

原创 112.[Leetcode]Path Sum

题意:求给定一个树,是否存在一个路径可以产生一个给定的值递归:public class Solution { public boolean hasPathSum(TreeNode root, int sum) { if (root == null) return false; // 边际条件 else { // 一个节点是叶子节点的充分

2016-05-18 16:28:26 277

原创 9.[Leecode]Palindrome Number

题意:求一个数是不是回文数我的解法:将此数倒过来,如果一样,那么就是回文数public class Solution { public boolean isPalindrome(int x) { int cache = x; int math = 0; while(x > 0){ math *= 10;

2016-05-18 15:33:57 239

原创 172.[Leetcode]Factorial Trailing Zeroes

题意:给一个数 n,计算n!的后面有几位0我的解法://计算其中有多少个5就可以了class Solution {public: int trailingZeroes(int n) { int count(0); while(n/5 > 0){ n /= 5; count += n; }

2016-05-17 13:08:22 231

原创 342.[leetcode]Power of four

这个题要求不用循环和递归,想了半天没想出来,但是找到一个超神的算法,好看而且好理解// 4的二进制是0,1相隔的状态class Solution {public: bool isPowerOfFour(int num) { return ((num-1)&num)==0 && (num-1)%3==0; }};

2016-05-16 22:38:19 245

原创 118.[Leetcode]Pascal's Triangle

我的解法vector<vector<int>> generate(int numRows) { vector<vector<int>> vv; vector<int> v,vtemp; for(int i=0;i<numRows;i++){ for(int j=0; j<vtemp.size()+1;j++){

2016-05-16 08:47:41 256

原创 26.[Leetcode]Remove Duplicates from Sorted Array

我的思路优先考虑用两个指针将后面的提前class Solution {public: int removeDuplicates(vector<int>& nums) { int i = 0, j = 0; for(; j < nums.size(); j++){ if(nums[i] != nums[j]){

2016-05-16 07:26:22 223

原创 66.[Leetcode]Plus One

我的思路还是灰常简单的一个题class Solution {public: vector<int> plusOne(vector<int>& digits) { int size = digits.size(); for(int i = size-1; i >= 0; i--){ if(++digits[i] < 10) break;

2016-05-15 16:01:33 218

原创 107[Leetcode].Binary Tree Level Order Traversal II

我的思路vector<vector<int>> levelOrderBottom(TreeNode* root) { queue<TreeNode*> s1,s2; vector<vector<int>> vv; //边际条件 if(root != NULL) s1.push(root); else re

2016-05-15 09:47:21 246

原创 101.[Leetcode]Symmetric Tree

题意:判断一个二叉树是不是对称的我的思路: 递归但是不是一般的那种递归,那种递归我是想不出来的,因为觉得子节点是否是对称和父节点着实没什么关系。我用递归遍历一个节点的左右节点,并记录在栈里,同时遍历其右左(顺序相反)记录在栈之后比较两个栈即刻。节点为空要置为 -1,一个不会再val出现的值 非常重要注意:边际条件,根为空的时候返回true; //第一种方法坑定是递归,但是不是一般的递归,一般的

2016-05-14 14:20:28 249

原创 110.[Leetcode]Balanced Binary Tree

题意:判断一个二叉树是不是平衡二叉树别人的思路:使用递归对于每一个点判断是否平衡点,所以需要一个计算此点深度的getDepth()方法int getDepth(TreeNode *node){ int left =0; int right=0; if (node == NULL) return 0; if (node->left != NULL) le

2016-05-13 18:07:16 278

原创 27.[Leetcode]

题意:在不新建一个字符串的情况下来去除指定的值我的思路:public class Solution { public int removeElement(int[] nums, int val) { int l = 0; for(int i=0; i<nums.length;i++){ int temp = nums[i];

2016-05-13 15:21:40 212

原创 198.[Leetcode]House Robber

题意:给定一串数字,让你选择其中一些数字,选的数字不能相邻,那么选的数字的最大和是多少?我的解法:这又是一个典型的动态规划求最优的问题,但是一开始我还是没有想明白。简单的说就是这一个公式: max_sum(i) = max(max_sum(i-2) + nums[i], max_sum(i-1))java代码如下:// 明显是动态规划的问题public class Solution {

2016-05-13 14:20:04 255

原创 345.[LeetCode]Reverse Vowels of a String

题意:反转字符串中的元音字母 aeiou 带 大写我的思路:有点鸡贼遍历一遍字符串,并且把其中元音字母都换成 不常用字符‘~’,并且用temp倒序存储这些字符再遍历一遍,从temp中取出字符放入 ‘~’ 的位置class Solution {public: string reverseVowels(string s) { //这里也可以使用set来排除aeiou

2016-05-13 00:44:14 269

原创 Android学习 -- 《Intent app间通信》

概述:Android中的一个主要特性就是可以用 action 和 intent 使当前的app跳转到其他的app。我们使用intent不止是可以在activity之间切换,还可以在不同app的activity之间切换intent可以通过:定义一个显式的intent制定需要启动组件的类名定义一个隐式的inten来唤起不同的app 必须是隐式的才可以启动其他app建立隐式(implicit)的i

2016-05-12 20:20:18 439

原创 Android学习--《数据的保存》

概述Android的数据保存可以分为3种情况保存在preference (小的键值对集合)保存在文件 (流式顺序数据,如图片文件,网络交换的数据等)保存到数据库DB保存在Perference两种方法:getSharedPerference() 多个shared perference文件Context context = getActivity();SharedPreferences sha

2016-05-12 17:26:24 286

原创 Android学习--《Fragment》

概要:fragment可以看作是一个子acitity,它具有自己的生命周期,与输入事件可以在不同的activity里复用,是activity模块化的一部分 可重用,模块化的UI组件创建:必须重写的回调方法 onCreateView(), 用来定义布局示例:import android.os.Bundle;import android.support.v4.app.Fragment;import

2016-05-12 15:06:14 292

原创 Android学习 -- 《关于Activity》

activity的生命周期由以下 名称 注释 Created 暂态,一瞬间,用于创造 started 暂态,一瞬间,可见 resumed 可交互,最顶层 paused 半透明,被遮挡,不执行代码 stoped 不可见,状态被保留 调用关系如下:指定launcher一个app里有多个activity的,哪一个第一个加载呢?<activity andro

2016-05-11 21:40:25 398

转载 Android 权限

转载自作者:houfeng 出处:http://houfeng.cnblogs.com 允许读写访问”properties”表在checkin数据库中,改值可以修改上传 允许一个程序访问CellID或WiFi热点来获取粗略的位置 允许一个程序访问精良位置(如GPS) 允许应用程序访问额外的位置提供命令 允许程序创建模拟位置提供用于测试 允许程序访问有关GSM网络信

2016-05-11 20:06:49 302

原创 opengl | openmesh 读取显示3d模型文件

操作鼠标控制物体旋转移动,滚轮缩放F1,F2,F3 可以更换显示文件 (file1:cow.obj file2:cactus.ply file3 : Armadillo.off)F4 更换显示模式 (wire,flat,flatlines)截图 使用命令行显示当前状态准备openmesh的下载配置下载最新的安装包安装openmesh配置vs工具-》选项-》项目和解决方案-》VC++目录

2016-05-10 14:59:16 24088 24

原创 24.[Leetcode]Swap Nodes in Pairs

题意:交换相邻(adjacent)的节点我的思路;//c++ recursive,效率是不高但是比较短class Solution {public: ListNode* swapPairs(ListNode* head) { if(!head || !(head->next)) return head; ListNode *c = head, *n = h

2016-05-05 20:54:33 277

原创 21.[Leetcode]Merge Two Sorted Lists

题意:归并两个排好序的链表我的思路;我们没有考虑递归的方法,也没有想到用递归解决,先贴出c++的非递归/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {}

2016-05-05 18:08:54 222

原创 121.[Leetcode]Best Time to Buy and Sell Stock

题意 :给你一串股票数字,你有一次的买入和卖出的机会,求最大的收益(卖出-买入)是多少?我的思路:一开始想的是双循环,果断超时。查询了一下这里要用到动态规划的思想:那么什么是动态规划呢? 动态规划(dynamic programming)是运筹学的一个分支,是求解决策过程(decision process)最优化的数学方法 把多阶段过程转化为一系列单阶段问题,利用各阶段之间的关系,逐个

2016-05-05 16:45:09 277

原创 202.Happy Number

题意求一个数是不是happy number,定义在官网题目下很清楚,这里就不赘述我的算法首先要考虑如果不出现1会怎么样,我猜测是会出现循环的,不然这题无解 题外:总是忘记了求平方要用 power(x,y)而不是 x^2, 导致错误// c++class Solution {public: bool isHappy(int n) { set<int> s;

2016-05-04 19:18:30 216

原创 263.[LeetCode]Ugly Number

题意:如果一个数的素因数,只含有 2,3,5,则其就是一个丑数,否则不是,特别的1是一个丑数我的解法:递归(c++):class Solution {public: bool isUgly(int n) { if(n == 0) return false; //特别的0,是一个非臭数 if(n == 1) return true; if (n

2016-05-04 17:52:44 267

原创 231.[Leetcode]Power of Two

题意:求一个数是不是2的幂我的思路一路除下去,只要有余数,就说明不是但是求次方的要记住两个特殊值0 不是任何数的次方 1 是任何数的次方class Solution {public: bool isPowerOfTwo(int n) { if (n == 1) return true; if (n == 0) return false; w

2016-05-04 14:18:44 192

原创 70.[Leetcode]Climbing Stairs

题意:一次只能走1级,或者2级,给你一个n级的楼梯,一共有多少种走完的方法我的算法:一开始肯定是想用递归,递归会很简答的写完,但是发现,到44这个测试样例就超时了所以得用非递归,经过前面几个题的提醒,先试试找规律1-1 | 2-2 | 3-3 | 4-5 | 5-8 | 6-13 ….斐波那契数列啊!// 我选择使用递归的算法// 可以是可以,但是会超时// 所以想想非递归的算法// 发现是个

2016-05-04 13:35:38 212

原创 83.[Leetcode]Remove Duplicates from Sorted List

题意:从一个排好序的链表中去重我的解法:设置两个指针,firstNode 和 lastNode,移动指针lastNode,如果两者所指的Node的val相同,则向后移动一位LastNode。如果两者所指的不同,则将firstNode的next指向lastNode,并且移动fristNode到lastNode处 (其实看代码应该更好理解一些)class Solution {public:

2016-05-04 13:12:30 234

原创 OPENGL绘制贝塞尔曲线

最终效果图:通过3个点形成一条贝塞尔曲线1. 鼠标问题在使用鼠标获取坐标的时候,要知道鼠标获取的坐标和屏幕坐标是不同的; openGL使用右手坐标 从左到右,x递增 从下到上,y递增 从远到近,z递增而鼠标是从左到右增x,同时从上到下也是增y所以在求 y 的时候,用(屏幕大小-y)来获取2. 绘制setpoint 用来绘制点 setline 用来绘制线 setBezier

2016-05-03 16:02:23 18329 3

原创 235.[Leetcode]Lowest Common Ancestor of a Binary Search Tree

class Solution {public: TreeNode* lowestCommonAncestor(TreeNode* root, TreeNode* p, TreeNode* q) { TreeNode* temp = root; //首先如果根节点和其中一个相同,那么肯定返回根节点 if(temp == q || temp ==

2016-05-02 20:46:45 248

原创 13.[LeetCode]Roman to Integer

class Solution {public: int romanToInt(string s) { //此处用到了map map<char,int> m; //通过下表添加map对象 m['I'] = 1; m['V'] = 5; m['X'] = 10; m['L'] = 5

2016-05-02 20:45:57 191

原创 206.[LeetCode]Reverse Linked List

//递归法class Solution {public: ListNode* reverseList(ListNode* head) { if(head == NULL || head->next == NULL) return head; //... ListNode* p = head->next; ListNode*

2016-05-02 20:45:10 201

原创 169.[LeetCode]Majority Element

class Solution {public: int majorityElement(vector<int>& nums) { sort(nums.begin(),nums.end()); int n = nums.size(),count(1); for(int i=0;i<n;i++){ if(nums[i+1]

2016-05-02 20:44:18 188

原创 217.[Leetcode]Contains Duplicate

判断是否重复class Solution {public: bool containsDuplicate(vector<int>& nums) { set<int> s; for(int i=0;i<nums.size();i++){ if(s.count(nums[i]) == 1) return true;

2016-05-02 20:43:12 220

原创 141.[LeetCode]Linked List Cycle

题意:找一个单链中是否有环我的解法 遍历单链,每次遍历 判断该节点的next 是否指向 head,如果指向说明是有环的,如果没指向则移动到下一个并把此节点的next指向head—缺点:会破坏此链,不过时间复杂度只要O(n)class Solution {public: bool hasCycle(ListNode *head) { if(head == NULL) r

2016-05-02 20:39:55 240

原创 191.[Leetcode]Number of 1 Bits

我的算法://将转化好的二进制字符串存入s中,然后从s中判断有多少的1// 从10进制到其他进制,都是对其求余数class Solution {public:int hammingWeight(uint32_t n) { string s = ""; char temp[1]; //循环求余数 int y(0);

2016-05-02 19:30:39 322

原创 [c++].类型转换

int to string1. int n = 65535; char t[256]; string s; //先做到char[]的转换,而后再转为string sprintf(t, "%d", n); s = t;2. int n = 65535; stringstream ss; string s; ss << n;

2016-05-02 19:18:56 170

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除