- 博客(763)
- 资源 (5)
- 收藏
- 关注
原创 leetcode171. Excel Sheet Column Number
26进制的问题class Solution {public: int sum=0; void f(string s ,int i,int t){ if(i<0) return ; int x=s[i]-'A'+1; for(int j=1;j<t;j++){ x*=26; }
2017-09-13 18:40:04 346
原创 2017年9月12日20:55:07
2017年9月12日20:55:09有几天没写,最近在看导师给的论文 。论文能看懂细节理解应该是不到位,加上我看的比较模糊,今晚必须在捋一遍。有些人说的话的做的事未必就是事实。尤其女人。不过多文字给不喜欢的人。很多原因,我打算在d3年。好好学习,努力研究。相信自己。
2017-09-12 20:58:34 265
原创 2017-9-8 15:56:23
2017-9-8 15:56:24总结几点:今天找cb看完ppt,比我预想的还要差。1.知道就说知道,这个很重要的问题,不要模模糊糊。2.英语是现在极其重大的问题了。要天天练,读的能力。3.现在最终要的是读懂,知道其为什么,4.要动脑子这是被提出来的,5.逻辑要清晰6.怎么去做ppt查啊学啊。。。
2017-09-08 16:09:12 278
原创 leetcode530. Minimum Absolute Difference in BST
平衡二叉树的性质。中序遍历二叉树为其拍好序列。/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), ri
2017-09-08 10:14:21 233
原创 leetcode462. Minimum Moves to Equal Array Elements II
好题啊,开始想直接暴力,超时。怎么也想不出最优的解到底是哪个数字。应该去想最优解一定是nums数组里面的。我们首先给数组排序,那么我们最终需要变成的相等的数字就是中间的数,如果数组有奇数个,那么就是最中间的那个数字;如果是偶数个,那么就是中间两个数的区间中的任意一个数字。而两端的数字变成中间的一个数字需要的步数实际上就是两端数字的距离class Solu
2017-09-07 11:27:09 310
原创 2017年9月7日10:47:23
2017年9月7日10:47:25最近日志是写的越来越少。今早终于把ppt搞完,还没给老师看,肯定换是差评。学习靠自己,要找到自己的兴趣点。完了就是多读书多码代码吧。
2017-09-07 10:49:26 286
原创 leetcode453. Minimum Moves to Equal Array Elements
题意是把vector的n-1个数加1,直到所有数相等。其实相等于把大的数减一,直到都等于最小数。相等于逆否命题。class Solution {public: int minMoves(vector& nums) { int n=nums.size(); int minx=nums[0]; for(int i=0;i<n;i++
2017-09-07 10:47:08 205
原创 leetcode349. Intersection of Two Arrays
vector的一系列操作。1 -- set_intersection(交集)2 -- set_union(并集)3 -- set_difference(差集)4 -- set_symeetric_difference(对称差集)去重的unique。class Solution {public: vector unique_element
2017-09-06 13:50:46 207
原创 leetcode598. Range Addition II降维
终于有点有意思的题目了。题意是给一个都是0的mn数组。给一组操作。m[i][j]就死把数组的前i行前j列全部加1.求最后最大的数的个数。开始想用简单的模拟去做,数组明显超内存。所以要用降维的思路。 开一个行的数组,一个列的数组。最后最大值肯定是m[0][0]。最后乘积代表个数。class Solution {public: int maxCount(int m
2017-09-06 13:39:16 246
原创 POJ-2559利用栈往前迭代
Largest Rectangle in a Histogram POJ - 2559 #include#include#include #include #include #include using namespace std;const int N=int(1e5)+9;int h[N];int n;int main(){ while(cin
2017-09-05 20:04:59 272
原创 leetcode538. Convert BST to Greater Tree
考察树的中序遍历。BST是左子树小于右子树。中序便利会输出他的从达到小的顺序。/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(
2017-09-05 15:44:08 203
原创 leetcode492. Construct the Rectangle
求给定一个面积的长和宽。要求长和宽的差最小。开根号面积,得到的是最大的长,然后--找到满足条件的就好。class Solution {public: vector constructRectangle(int area) { int x=sqrt(area); vector ans; for(int i=x;i>=1;i-
2017-09-05 15:29:14 198
原创 cfCodeforces Round #432 (Div. 2,
第一题:找规律就好了,前k个和后n到n+k是不一样的,中间都是k。#include #include #include #include using namespace std;int main(){ int n,k,t; scanf("%d%d%d",&n,&k,&t); if(t<=k) cout<<t; else if(t>k&&t<n) co
2017-09-05 09:23:14 257
原创 leetcode203. Remove Linked List Elements
删除链表的val元素,就是链表的删除操作,但是我写了很久才过,真的太生疏了。/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */c
2017-09-04 22:16:26 155
原创 leetcode27. Remove Element
class Solution {public: int removeElement(vector& nums, int val) { int n=nums.size(); int x=n; for(int i=0;i<x;i++){ if(nums[i]==val) { nums[i]
2017-09-04 18:47:02 165
原创 leeetcode283. Move Zeroes
class Solution {public: void moveZeroes(vector& nums) { int n=nums.size(); int x=n; for(int i=0;i<x;i++){ if(nums[i]==0){ for(int j=i;j<x-1;j++
2017-09-04 18:46:33 207
原创 华为笔试题
求两个树的二进制位不同的个数。#includeusing namespace std;int func(long long x){ int countx = 0; while(x) { countx ++; x = x&(x-1); } return countx;}long long s[1005];int
2017-09-04 17:58:44 323
原创 2017年9月1日23:11:33
2017年9月1日23:11:35最近看论文真的头疼,很难搞。又打了一场cf,b题没思路,慢慢来吧。适当休息。
2017-09-01 23:12:52 267
原创 cfA. Odds and Ends
A. Odds and Endstime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputWhere do odds begin, and where do they end?
2017-09-01 23:11:16 245
原创 leetcode645. Set Mismatch
类似于哈希 查找就好了。class Solution {public: vector findErrorNums(vector& nums) { int n=nums.size(); vector ans; vector s(n+2,0); for(int i=0;i<n;i++){
2017-09-01 20:30:36 265
原创 leetcode287. Find the Duplicate Number
找出这些串中一个重复。遍历一遍,然后用vector的find函数去查找就好了。查找之前要把当前值记录一下,并删去,找到不久是这个重复了吗。class Solution {public: int findDuplicate(vector& nums) { for(int i=0;i<nums.size();i++){ int
2017-09-01 20:05:13 187
原创 leetcode268. Missing Number
找出传中从0到n缺少的那个数。最近论文看的真的很烦,什么都不会,希望赶紧上课把。是从0到n,所以排个序,找出值与下标不对应的就好,也可能是最后一个数缺少。循环到n+1.class Solution {public: int missingNumber(vector& nums) { sort(nums.begin(),nums.end());
2017-09-01 19:38:19 185
原创 leetcode389. Find the Difference
求出这两个串中一个不同的值。开始想用multiset,后来想到string里也有find。返回的索引值。所以用stringfind很好解决。class Solution {public: char findTheDifference(string s, string t) { int n=s.size(); int n2=n+1;
2017-09-01 19:29:21 214
原创 2017年8月30日23:43:42
2017年8月30日23:43:44多一些不为为什么的坚持,这是考验时听朱伟恋恋有词记住的。最近我日志,快变成了周志,坚持真的不易。今晚跟师兄做笔试,然后去吃夜宵。聊到找工作,并不轻松,可选不多,限制太多。而且看似较高的薪水在这种城市里,我们都换是岗位上的螺丝钉。生活里的小蚂蚁。完了还要为房子而努力。我想象中的生活并不希望是这么现实的,然而现实就是这么现实。感觉累又
2017-08-30 23:53:56 366
原创 leetcode653. Two Sum IV - Input is a BST
题意是求二叉树中的任意两个数的和能不能是k。把二叉树便利一遍,求出所有元素,然后在循环便利每两个的和就好。/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(i
2017-08-30 23:42:16 209
原创 leetcode58. Length of Last Word
不知为什么我的博客也会多了些关注,非常感谢能给你们提供到帮助。让我坚持做的一点事情也有了点意义。就是判断最后一个字符串的长度。有一个坑就是最后一个可能为空格,所以要去掉最后的空格。class Solution {public: int lengthOfLastWord(string s) { int n=s.size();
2017-08-30 23:30:36 211
原创 leetcode202. Happy Number
以为这题是找规律,试着写了个循环,也过了。用集合去判断出现过的数字,判断循环。然后就根据题目中的算法模拟就好。class Solution {public: bool isHappy(int n) { set s; s.insert(n); int k=0; while(1){ int n2=0; while(n){
2017-08-29 11:17:52 291
原创 258. Add Digits
一看不让用循环就有点蒙。只能找规律。和9相关。class Solution {public: int addDigits(int num) { if(num==0) return 0; if(num%9==0) return 9; return num%9; } }};
2017-08-29 10:49:26 245
原创 leetcode371. Sum of Two Integers
这题挺有意思不用+-算+法先&:求出需要进位的位后^:求出除了进位的结果然后:把进位的那位左移,用上面的结果再去+进位后的结果。class Solution { public: int getSum(int a, int b) { while(b) { int carry = a & b;
2017-08-28 23:48:03 355
原创 leetcode448. Find All Numbers Disappeared in an Array
vector新建容量为n的数组。先循环一遍记录出现过的,然后在看哪个没出现输出就好。网上很多其他方法。class Solution {public: vector findDisappearedNumbers(vector& nums) { int n=nums.size(); vector used(n+1,0); fo
2017-08-28 23:36:15 365
原创 2017年8月28日22:46:43
2017年8月28日22:47:01来读研两个月了,慢慢进入混日子的节奏。要自己去找方法。这个世界万事靠自己兄弟,不要把一丝一毫的希望放在别人身上,你自己所为。有因有果。希望自己保持住头脑的清醒,思考,保持清醒。
2017-08-28 22:49:23 272
原创 [挑战程序设计]POJ2386
深度优先便利:给定整数a1到an,选出若干数和为k。思路是判断每个数加或者不加,然后深度搜下去。int a[MAX_N];int n,k;bool dfs(int i,int sum){//已经走到了节点i,和为sum,然后向后分支。 //推出循环的条件 if(i==n) return sum==k; //不加a[i]的情况 if(dfs(i+1,s
2017-08-28 09:50:18 372
原创 leetcode226. 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) {} *
2017-08-25 15:11:43 180
原创 leetcode520. Detect Capital
class Solution {public: bool detectCapitalUse(string word) { int n=word.size(); int k=0; if(word[0]>='A'&&word[0]<='Z') k=1; int k2=0,k3=0; for(int i=1;i<n
2017-08-25 14:46:38 195
原创 leetcode104. Maximum Depth of Binary Tree
递归求树的深度class Solution {public: int maxDepth(TreeNode* root) { if(root==0)return 0; int l=1,r=1; l+=maxDepth(root->left); r+=maxDepth(root->right); re
2017-08-25 14:38:27 204
原创 leetcode136. Single Number
这个题用异或做最简单。直接疑惑到最后,因为异或结果相同为0,不同为1.异或两次相同的值结果为0.异或题解:class Solution { public: int singleNumber(vector& nums) { int length = nums.size(); int result = 0 ; for (int
2017-08-25 14:26:46 200
原创 leetcode292. Nim Game
博弈论简单的题,面对4的先手是稳输的,同样面对4的倍数的先手也是稳输的。其他情况可转化为让对方面对4或者4的倍数。class Solution {public: bool canWinNim(int n) { if(n%4==0)return false; return true; }};
2017-08-25 14:03:12 215
原创 leetcode521. Longest Uncommon Subsequence I
这题要想清题意。一开始没仔细思考题意,想去怎么匹配。其实两串只要不想等,长的串的长度肯定是答案。class Solution {public: int findLUSlength(string a, string b) { int m=a.size(); int n=b.size(); if(m!=n) return max(m
2017-08-25 13:52:05 366
原创 leetcode Add to List 637. Average of Levels in Binary Tree
就是对二叉树每一层求平均值。开始想法用层次遍历,然而又不知道该点是在哪一层。所以要求没一点的深度,而通过先序遍历递归求没一点的深度的过程中。好像并不需要再去层次遍历,结果就已经很明显了。要注意leetcode的树要用->。两个数组用来存结果。没有数据量范围我就写的100000.还要注意有一个奇葩数据2147483647 两个节点也是2147483647 ,所以要改
2017-08-24 13:20:49 329
原创 C++ Qt学习教程1-50
总结一下前50节,主要讲解Qt的一些部件,后面的是model模型数据的使用。很基础。这是我跟教程写的代码.教程为C++Qt,VoidRealms的教程1-50节代码下载链接:http://download.csdn.net/download/a197p/9947306
2017-08-24 11:24:57 2045
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人