自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 我的C++后台开发学习路线(秋招,C++后台,面经)

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

2018-11-27 10:08:01 44959 57

原创 图片傅里叶变换加入盲水印Python源代码实现

原理:图片经过傅里叶变换后,水印图片直接按像素覆盖到频率域,因为频谱是中心对称的,所以加水印也要对称的加,具体就是图片分上下两部分,左上加了什么,右下也要加同样的内容。之后傅里叶反变换回去。解水印的时候变换到傅里叶变换提取就可以了。注意点:(1) 水印图片的大小要小于要加入水印图片大小的一半(为了成中心对称)。(2) 图片都要用png或bmp格式,不能用有损压缩的jpg等。(3

2017-05-09 20:37:32 17383 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 557

原创 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 1398

原创 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 292

原创 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 480 2

原创 网易2018校招堆棋子

小易将n个棋子摆放在一张无限大的棋盘上。第i个棋子放在第x[i]行y[i]列。同一个格子允许放置多个棋子。每一次操作小易可以把一个棋子拿起并将其移动到原格子的上、下、左、右的任意一个格子中。小易想知道要让棋盘上出现有一个格子中至少有i(1 ≤ i ≤ n)个棋子所需要的最少操作次数.输入描述:输入包括三行,第一行一个整数n(1 ≤ n ≤ 50),表示棋子的个数第二行为n个棋子的

2017-08-12 19:47:24 1235 2

原创 找出数组中出现次数超过n/2(n/3)次的数

时间O(n),空间O(1)LeetCode 169. 找出数组中出现次数超过n/2次的数http://blog.csdn.net/chfe007/article/details/42919017基本原理:每次都找出一对不同的元素,从数组中删掉,直到数组为空或只有一种元素。 不难证明,如果存在元素e出现频率超过半数,那么数组中最后剩下的就只有e。LeetC

2017-08-02 18:32:02 3175

原创 循环移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 305

转载 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 503

原创 有序数组求两个数的和为某个值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 1106 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 1440

原创 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 411

原创 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 303

原创 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 2768

原创 二维数组查找

在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。数组大小都相同。从左下角开始找,大于向上,小于向右。class Solution {public:    bool Find(int target, vector > array) {        int r

2017-02-21 12:24:00 304

空空如也

空空如也

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

TA关注的人

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