- 博客(16)
- 收藏
- 关注

原创 我的C++后台开发学习路线(秋招,C++后台,面经)
后台开发包括的知识点很多,包括语言基础,算法,linux编程基础,linux内核,网络,数据库,分布式等等。面面俱到很难,一个领域钻研的很深也很难。我认识的大神里有把C++语言吃的非常透的,也有实验室就是搞分布式的,拿offer都非常轻松。我在本次秋招拿到了:字节跳动后台开发ssp网易游戏游戏研发ssp阿里云基础平台开发华为15级顶薪腾讯后台开发ssp我准备应聘的时间从研一的寒假开始...
2018-11-27 10:08:01
47625
57

原创 图片傅里叶变换加入盲水印Python源代码实现
原理:图片经过傅里叶变换后,水印图片直接按像素覆盖到频率域,因为频谱是中心对称的,所以加水印也要对称的加,具体就是图片分上下两部分,左上加了什么,右下也要加同样的内容。之后傅里叶反变换回去。解水印的时候变换到傅里叶变换提取就可以了。注意点:(1) 水印图片的大小要小于要加入水印图片大小的一半(为了成中心对称)。(2) 图片都要用png或bmp格式,不能用有损压缩的jpg等。(3
2017-05-09 20:37:32
17890
21
原创 二叉树前序中序后序遍历的非递归形式
前序遍历/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; *
2017-10-03 21:57:54
590
原创 Ubuntu16.04 Nginx配置HTTPS
安装 apt-get install build-essentialapt-get install libtoolapt-get install libpcre3 libpcre3-devapt-get install zlib1g-devapt-get install opensslapt-get install nginx默认配置文件位置 /etc/ngi
2017-09-24 22:05:54
1437
原创 LeetCode 56. Merge Intervals 合并区间
Given a collection of intervals, merge all overlapping intervals.For example,Given [1,3],[2,6],[8,10],[15,18],return [1,6],[8,10],[15,18]./** * Definition for an interval. * struct Interva
2017-08-13 20:13:15
333
原创 LeetCode 660 Remove 9 (LeetCode Weekly Contest 45)
Start from integer 1, remove any integer that contains 9 such as 9, 19, 29...So now, you will have a new integer sequence: 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, ...Given a positive integer n, you ne
2017-08-13 11:19:36
515
原创 网易2018校招堆棋子
小易将n个棋子摆放在一张无限大的棋盘上。第i个棋子放在第x[i]行y[i]列。同一个格子允许放置多个棋子。每一次操作小易可以把一个棋子拿起并将其移动到原格子的上、下、左、右的任意一个格子中。小易想知道要让棋盘上出现有一个格子中至少有i(1 ≤ i ≤ n)个棋子所需要的最少操作次数.输入描述:输入包括三行,第一行一个整数n(1 ≤ n ≤ 50),表示棋子的个数第二行为n个棋子的
2017-08-12 19:47:24
1287
原创 找出数组中出现次数超过n/2(n/3)次的数
时间O(n),空间O(1)LeetCode 169. 找出数组中出现次数超过n/2次的数http://blog.youkuaiyun.com/chfe007/article/details/42919017基本原理:每次都找出一对不同的元素,从数组中删掉,直到数组为空或只有一种元素。 不难证明,如果存在元素e出现频率超过半数,那么数组中最后剩下的就只有e。LeetC
2017-08-02 18:32:02
3251
原创 循环移k位,3个reverse完成
LeetCode189. Rotate Arrayclass Solution {public: void rotate(vector& nums, int k) { int n = nums.size(); k = k % n; reverse(nums.begin(), nums.begin() + n - k);
2017-08-02 11:02:31
339
转载 Ubuntu install Google-Chrome
Add Key:wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add - Set repository:sudo sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable
2017-07-29 10:53:37
533
原创 有序数组求两个数的和为某个值O(n)解法
class Solution {public: vector twoSum(vector& numbers, int target) { int len = numbers.size(); int i = 0, j = len - 1; vector ans; while (numbers[i] + numbers[j] !
2017-07-12 09:59:42
1142
1
原创 统计bit 1的个数
int hammingWeight(uint32_t n){ int res = 0; while(n) { n &= n - 1; ++res; } return res;}
2017-07-11 18:32:10
1506
原创 LeetCode 198. House Robber(必须不连续数组的最大和)
DP,dp[i] = max(dp[i - 2] + nums[i], dp[i - 1])class Solution {public: int rob(vector& nums) { const int len = nums.size(); if (len == 0) return 0; if (len == 1) return n
2017-07-11 18:05:46
464
原创 LeetCode 152. Maximum Product Subarray(最大连续乘积)
class Solution {public: int maxProduct(vector& nums) { vector dpmax(nums.size()); vector dpmin(nums.size()); dpmax[0] = nums[0]; dpmin[0] = nums[0]; int ans
2017-07-11 16:39:41
336
原创 Gray-Level Grouping(GLG) 论文阅读与实现
《Gray-Level Groupinig(GLG):An Automatic Method for Optimized Image Contrast Enhancement--Part Ⅰ:The Basic Method》阅读心得及Python实现源代码,包括基本GLG算法、FGLG、AGLG。
2017-07-11 16:20:52
2993
原创 二维数组查找
在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。数组大小都相同。从左下角开始找,大于向上,小于向右。class Solution {public: bool Find(int target, vector > array) { int r
2017-02-21 12:24:00
331
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人