自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Kang_TJU的博客

潮平两岸阔,风正一帆悬

原创 leetcode题目汇总

以下内容摘自[LeetCode-分类题解[全]. 同时,也记录自己的做题进展。数组[Remove Duplicates from Sorted Array] [Remove Duplicates from Sorted Array II] [Remove Element ] [Two Sum]...

2016-11-03 22:02:29 1424 0

原创 【推荐系统实践】读书笔记-第1章

本文按照书中的目录进行内容组织,对于个人认为比较重要的点,进行提炼梳理,方便自己加深印象。同时,也想借助的文章的分享出来,可供小伙伴们一同学习进步,也非常欢迎大佬拍砖指正。 什么是推荐系统 基本任务 关联用户和信息。一方面帮助用户发现对自己有价值的信息,一方面让信息展现在他感兴趣...

2018-12-06 15:04:23 184 0

原创 Accelerated-c++-置换索引

问题第五章练习题5-1. 设计和实现一个程序以产生一个置换索引。 在一个置换索引当中,每个短语都是以这个短语的每一个单词作为索引的(类似倒排,内容做索引)。因此,假如有如下的输入: The quick brown fox jumped over the fence 得到如下的输...

2017-12-02 21:33:06 385 0

原创 linux系统编程-一个demo

本目展示一个linux环境下系统编程的一个demo。主要是为了讲解项目下文件夹的布局以及makefile的写法。 程序的源代码来自于书籍《Accelerated c++》一书当中第四章的例子。布局一个基本的项目主要是以下5项构成: src:存放项目的源文件。目录可以细分。 inc:存放项目的头文...

2017-11-29 13:41:55 400 0

原创 python可视化-matplotlib学习2

本目承接该系列上一目,总结更多的我用到的的画图技巧。柱状图(横向)import matplotlib.pyplot as plt from matplotlib import cm import numpy as nplabel = ['a', 'b', &...

2017-11-16 13:09:54 326 0

原创 作业部落markdown-demo

欢迎使用 Cmd Markdown 编辑阅读器我们理解您需要更便捷更高效的工具记录思想,整理笔记、知识,并将其中承载的价值传播给他人,Cmd Markdown 是我们给出的答案 —— 我们为记录思想和分享知识提供更专业的工具。 您可以使用 Cmd Markdown: 整理知识,学习笔记 ...

2017-11-03 13:22:27 1347 0

原创 leetcode-75-sort colors

问题题目:[leetcode-75-sort colors]思路以下思路参考[算法系列之十一荷兰国旗问题] 我们可以把数组分成三部分,前部(全部是0),中部(全部是1)和后部(全部是2)三个部分,每一个元素(红白蓝分别对应0、1、2)必属于其中之一。 将前部和后部各排在数组的前边和后...

2017-10-30 17:29:12 263 0

原创 leetcode-96-Unique Binary Search Trees

问题题目:[leetcode-96]思路catalan数。至于怎么分析的,参考自己的lintcode刷题里对这个题的解释。基本方法是固定根节点之后,剩下的N-1个节点,依次在左右两支展开。代码class Solution { public: int numTrees(int n) { ...

2017-10-25 22:58:21 177 0

原创 leetcode-698-Partition to K Equal Sum Subsets

问题题目:[leetcode-698]思路能想到的是搜索的思路,但是不知道怎么用。 参考了[698. Partition to K Equal Sum Subsets]看了别人的代码,知道这个题搜索的技巧在于,对于每一个元素nums[i],枚举每一个子数组的当前位置。这也是一种枚举策略。并且,这...

2017-10-24 21:37:07 885 0

原创 leetcode-416-Partition Equal Subset Sum

问题题目:[leetcode-416]思路先求和,如果不能被2整除。肯定不能二等分。 对于[1,3]来说,虽然和可以被二等分,但是显然的是,数组并不能二等分。 所以,问题转化为是否存在一个子数组,他的和为sum/2。 当然,这个题可以枚举所有的子数组,判断,只要有一个就可以。 还有一个办法...

2017-10-24 20:27:02 182 0

原创 leetcode-18-4Sum

问题题目:[leetcode-18]思路这个题还是和之前一样,多了一层循环。 排序之后的夹逼! 但是,要注意,夹逼在相等的情况下,i,j都要移动的。这点不要忘了。代码class Solution { public: vector<vector<int>> fou...

2017-09-29 23:00:58 220 0

原创 leetcode-16-3Sum Closest

问题题目:[leetcode-16]思路注意,夹逼的思路一定要注意,必须要排序!!!否则,就是错的。 夹逼其实也相当于某种程度的遍历,但是它的技巧性很强。关键就是在排序,最近收获的这个方法非常赞啊!引入一个new_diff保留最小差值即可。代码class Solution { public: ...

2017-09-29 22:46:44 190 0

原创 leetcode-15-3sum

问题题目:[leetcode-15]思路我之间用dfs做的。 但是,这次看到新的方法。算是两根指针夹逼的做法。 相等时的情形,处理比较重要。避免了o(n^3)。如果,i,j不动。就不行。代码class Solution { public: vector<vector<int...

2017-09-28 16:45:51 181 0

原创 leetcode-480-Sliding Window Median

问题题目:[leetcode-480]思路参考:[C++ two multiset solution] 代码思路非常的清晰。 不能继续使用priority_queue的原因是,删除操作不方便。 所以,改用multiset,优点是,插入删除都很块,并且有序。这样可以维护前半部分和后半部分,其实...

2017-09-25 16:18:04 476 0

原创 leetcode-295-Find Median from Data Stream

问题题目:[leetcode-295]思路基本思路就是将前半部分元素维护在大根堆当中。 后半部分元素维护在小根堆当中。但是要注意的是,大根堆和小根堆可以维护各自的有序性。但是,这两个部分的有序性需要在每次插入的时候特别判断以下。 每次,都进行维护。这样就不会出现某一次插入需要弹出很多元素的情形...

2017-09-25 15:09:26 151 0

原创 leetcode-4-Median of Two Sorted Arrays

问题题目:[leetcode-4-Median of Two Sorted Arrays]思路这个题目还是比较困哪的。 说一下基本的思路,这个题求两个有序数组的中位数。那么,我们给出一个更一般的办法,即求出两个有序数组的第k位数。 大致的思路是这样,各自考虑A[k/2-1]与B[k/2-1]。...

2017-09-25 14:30:26 454 0

原创 linux系统编程-epoll

本文对epoll的注意点做一个小结。接口epoll常见的接口有三个:1.创建epoll的实例,在内核中初始化相应的数据结构// 创建epoll instance // linux 2.6.8之后,size参数没有实际意义。但是,需要比0大 int epoll_create(int size);2....

2017-09-25 00:17:56 250 0

原创 leveldb-expand文档

leveldb-expand文档 作者:kang 邮箱:likang@tju.edu.cn 项目地址:[] 功能一(前缀匹配)1.接口设计virtual Status GetByPrefix( const ReadOptions& options, ...

2017-09-24 20:18:25 272 0

原创 leetcode-153-Find Minimum in Rotated Sorted Array

问题题目:[leetcode-153]思路如果没有旋转,直接返回。 如果,旋转,二分的思路。和之前方法一样,注意hign和low的更新方法。最后返回二者相邻是边界条件。 因为最小值肯定不存在有序区间当中。只能在非有序区间中寻找。代码class Solution { public: in...

2017-09-24 17:49:43 423 0

原创 vector实现

给出的实现,参照accelerated c++一书当中的内容。总结有几个点说一下啊: 1.注意三个指针的语义,data,avail,limit。增加limit之后,注意,修改avail的用法,尤其是迭代器那一块。 2.rule of three原则。 3.allocator的用法,alloc...

2017-09-19 10:43:37 291 0

原创 leveldb-expand接口设计V2

leveldb-expand接口设计项目地址:https://github.com/google/leveldb接口设计 类型定义 // 记录类型 typedef std::pair<std::string, std::string> RecordType; 前缀匹配: virtua...

2017-09-18 22:28:04 402 0

原创 leetcode-23-Merge k Sorted Lists

问题题目:[leetcode-23]思路归并的思路,谁小谁走。 多文件排序的时候,也是这个思路,此时的指针换成文件指针。代码/** * Definition for singly-linked list. * struct ListNode { * int val; * ...

2017-09-15 20:18:32 141 0

原创 leetcode-75-Sort Colors

问题题目:[leetcode-75]思路参考[几种有关排序的常见面试问题] 基本思路就是partition。 增减begin cur end begin 前面的元素全部是0, end后面的元素全部是2. [begin, cur)这个区间的全部是1,这是个很重要的特点!!!代码class ...

2017-09-11 12:46:21 178 0

原创 图算法小结

本目总结常见的图算法。kruskal构造mst,按边从小到大遍历,如果边的响铃节点位于不同的集合,那么该边是mst当中的一条边。这个地方需要并查集的知识。 题目:[jobdu-1017] 代码 #include <iostream> #include <vector> #i...

2017-09-10 18:15:25 175 0

原创 leetcode-90-Subsets II

问题题目:[leetcode-90]思路上一目的题目需要两个条件: 1.必须是升序 2.试探过的元素不能反复试探 3. 如果是相同的元素,同一个位置不能由多个相同元素试探。但是要注意,如果相同元素已经试探了别的位置,那么这个位置不可能由相同元素试探。即使元素相同。代码class Soluti...

2017-09-09 17:54:26 144 0

原创 leetcode-78-Subsets

问题题目:[leetcode-78]思路按照层次进行枚举即可。主要剪枝的条件。 1. 当前元素之前不能出现过 2. 必须是升序注意状态恢复。代码class Solution { public: vector<vector<int>> subsets(vector...

2017-09-09 13:18:50 146 0

原创 华为2018校招

题目1 题目描述 请一个在字符串中找出连续最长的数字串,并把这个串的长度返回;如果存在长度相同的连续数字串,返回最后一个连续数字串; 注意:数字串只需要是数字组成的就可以,并不要求顺序,比如数字串“1234”的长度就小于数字串“1359055”,如果没有数字,则返回空字符串(“”)...

2017-09-07 11:50:01 4632 0

原创 c++学习-匿名名字空间用法

用法下午在学习levedb源码的时候,看到version_set.cc有这样一段代码:// Callback from TableCache::Get() namespace { enum SaverState { kNotFound, kFound, kDeleted, kCor...

2017-09-05 14:44:53 742 0

原创 LRUCache-c++实现

代码//LRUCache.h #ifndef LRUCACHE_H_ #define LRUCACHE_H_#include <utility> #include <unordered_map> #include <list>template<class ...

2017-09-04 09:55:43 374 0

原创 leetcode-145-LRU cache

问题题目:[leetcode-145]思路参考了[O(1) unordered_map + list + splice] 参考者代码的思路非常清晰。 首先,插入和获取的时间复杂度在O(1),不能用deque去实现。否则无法到达常数。采用链表,插入,删除的时间复杂度都是o(1)。需要双向链表,可...

2017-09-02 17:52:03 161 0

原创 leveldb-编码

参考这个链接[ leveldb源码剖析–编码],把为什么要编码以及如何编码讲的比较清楚。 我再简单记录下我自己的学习心得。主要是回答几个问题,回答清楚就行了。 为什么要编码? 假设key = “hello”, value=”world”,对于这个pair,你应该怎么存储呢?显然直接存成一...

2017-08-30 13:52:39 233 0

原创 leetcode-8-String to Integer (atoi)

问题题目:[leetcode-8]思路说下思路,虽然做了一个半小时。不过思路基本上一直都是正确的。这个题目应该反复写下,应为要考虑的情形是比较多的。大的思路是找到第一个pattern出来,然后围绕这个pattern处理。主要处理三部分逻辑: 抽出pattern 符号处理 越界 代码class So...

2017-08-29 15:37:07 208 0

原创 leetcode-7-Reverse Integer

问题题目:[leetcode-7]思路这个题翻转之后要小心越界的情况。代码class Solution { public: int reverse(int x) { if(!x) return x; if(x>0){ retur...

2017-08-29 13:49:25 182 0

原创 leveldb-expand接口设计

leveldb-expand接口设计接口设计 前缀匹配: virtual Status GetPrefix( const Slice& prefix, std::map<std::string, std::string>&am...

2017-08-28 18:56:59 209 0

原创 c++学习-std::list

这个东西到不难,有一些接口需要熟悉,暂时记录下。代码#include <list> #include <iostream>int main(){ std::list<int> mylist; typedef std::list<int>...

2017-08-25 18:16:43 262 0

原创 jobdu-1447-最短路

问题题目:[jobbu-1447]思路DIJKSTRA( G, w, s ){ 1.INITIALIZE-SINGLE-SOURCE(G,s) 2.S = EMPTY 3.Q = V[G]; 4.while Q!=EMPTY 4.1 do u = E...

2017-08-22 21:08:38 168 0

原创 poj-2046-循环子串问题

问题题目:[poj-2046]思路这个题目有个结论: 若s存在循环子串,当且仅当,len可以被len - prefix[len-1]整除。连接次数为len / len-prefix[len-1]. 充分性我不会证明,我就证明下必要性吧。 不放假设s = pattern * n; len = ...

2017-08-19 21:56:18 151 0

原创 leetcode-125-Valid Palindrome

问题题目:[leetcode-125]思路先预处理下,然后利用库即可。代码class Solution { public: bool isPalindrome(string s) { std::string tmp; int sz = s.size(); ...

2017-08-19 19:55:40 174 0

原创 leetcode-28-Implement strStr()

问题题目:[leetcode-28]思路朴素的思路,主串回溯。代码class Solution { public: int strStr(string haystack, string needle) { string& txt = haystack; ...

2017-08-19 19:47:15 175 0

原创 素数对-腾讯2018校招

问题题目:[素数对-腾讯2018校招]思路素数筛法筛出来,判断即可。 这个题用素数筛法筛出来,判断的复杂度也比较低。我第一次用集合就慢。代码#include <iostream> #include <string.h> #define N 1024int flag[N];...

2017-08-17 22:16:10 209 0

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