- 博客(85)
- 收藏
- 关注
原创 毕业求职总结
断更时间创下新的纪录,这么长的时间都在忙着一件事,找份工作毕业。 但是的确没有想到会将时间拉得这么长,春招提前批-春招-秋招-秋招补招-春招补录,回头看来居然断断续续找了一年的活 = = 和几个同学打趣,我们几个应该取一个诸如“二本院校学生,如何逆袭获得互联网一线offer…”的题目,去开个值乎还能收一波智商稅。 相比于婷婷那种秋招提前批,一波算法面到底,商汤offer到手;或者是汪同学那样...
2018-05-05 15:26:19 918 1
原创 HBase学习记录
最近对于HBase的学习,先是对于之前学习的Hadoop相关内容的复习,再是对于HBase相关架构,特性的学习,最后是根据需求,使用SimpleHBase进行的开发任务实践,大概完成了对于消费记录的HBase,MySQL双写存储。hadoop生态圈:Pig:一种操作hadoop的轻量级脚本语言,用来快速轻松的处理巨大的数据。Hive:满足了数据仓库的需求,适用于离线的进行数据处理与分析工作。H
2017-07-31 22:57:59 500
原创 实习基础内容 学习记录
在有赞实习至今,准备大概记录一些在各个方面的学习,收获。大概可以从两个方面来概括: 一为实践项目开发中的一些常用工具,中间件知识等,简单来说是:从学校到实际开发的技术成长。 二为在实际开发过程中,经历了一个项目从立项到实际开发,再是联调测试的过程。并且学习到对于一些用户模型,角色的定义的过程。 技术成长:单元测试:对软件中的最小可测试单元进行检查和验证。 在对于项目熟悉过程中,对项目补充大量
2017-07-29 00:14:03 1279
原创 断更已久的博客记录
自从开学以后一直忙于找实习,先后投了不少公司,并且老年人依旧参加了两场比赛,就此记录。实习阿里面试由于是浙江人,所以比较想回浙江工作,杭州阿里的确是一个非常吸引人选择。但是很无奈的是,它反倒成为了我第一家面试的公司。在阿里云的师兄内推之后,很快就接到了电话面试,现在回过头来看,一面能过,面试官真是一个好人啊= = 很多问题,虽然在之前有过准备,但是在实际中,会存在紧张,沟通,思路,细节等等的问题。
2017-06-17 15:27:53 447
原创 类加载机制 读笔
类加载机制虚拟机的类加载机制:虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验,转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型。 就Java语言,类型的加载,连接过程和初始化是在程序运行期间完成的;这种策略稍微增加了性能开销,但是提供了高度的灵活性。(Java动态扩展的语言特性依赖运行期动态加载和动态连接实现)类加载的时机: 类的生命周期:开始保持着该固定顺序,这些
2017-02-07 23:33:26 374
原创 GC 垃圾收集器 内存分配 读笔
GCGC需要完成的3件事情:哪些内存需要回收什么时候进行回收怎么进行回收在之前介绍中,程序计数器,虚拟机栈,本地方法栈的生命周期和线程保持一致,生则生,死则死;因此这几个区域的内存分配和回收都具有确定性,在方法或者线程结束时,内存自然回收。而Java堆与方法区内存的分配和回收都是动态的,垃圾收集器主要关注的就是这个部分的内存。对象存活性的判断: 在垃圾收集器对堆回收之前,需要判断哪些对象还
2017-02-05 23:21:04 424
原创 Java内存区域 对象 读笔
深入理解Java虚拟机这本书,JVM的内存管理,GC,JVM加载等内容有了一个较清晰的理解;但是对于Java字节码执行,内部优化的一些内容还是感觉比较吃力,这些内容还需要再看,再消化..Java内存区域运行时数据区域: JVM在执行Java程序过程中将其管理的内存划分为若干个不同的数据区域。每个区域都有其各自的用途,以及创建和销毁的时间。程序计数器 (Program Counter Regist
2017-02-04 23:20:27 329
原创 Python实践 贴吧爬虫
大概把python基础的书看完之后打算写写什么以实践知识,于是就开始尝试写爬虫…..一开始打算对现在比较热门的知乎进行一个爬虫,但是在实践中不断遇到问题…知乎的登入有时候会需要验证码,这需要去找开源库解决;由于对单个IP的大量访问进行限制,于是需要代理服务器;知乎的前端好像也有一下变化,旧demo的参考价值下降不少…..综上所述,不能一口吃成胖子,决定从简单的百度贴吧爬起,起手终于开始顺利….爬虫实
2017-02-03 23:06:53 587
原创 线程 线程池 Executor框架 读笔
线程简介: 什么是线程: 现代操作系统调度的最小单位,在一个进程内可创建多个线程,每个线程都拥有自己的计数器,堆栈,局部变量等特性,并且可以访问共享的内存变量。多线程的好处:更好的利用现在处理器上的多个核心。得到更快的响应速度。更好额编程模型。线程优先级: 决定线程需要多或者少分配一些处理器资源的线程属性。 针对频繁阻塞(休眠或者I/O操作)的线程需要设置较高优先级,偏重计
2017-02-01 22:37:08 488
原创 Java内存模型 读笔
Java内存模型的基础并发编程模型的两个关键问题:线程之间的通信机制: 共享内存:线程之间共享程序的公共状态,通过读-写内存中的公共状态进行隐式通信。信息传递:线程之间没有公共状态,通过发送消息显式进行通信。线程之间的同步机制:用于控制不同线程操作发生的相对顺序的机制。 共享内存模型中,同步是显式进行,必须显式指定方法或代码段需要的互斥执行。消息传递模型中,消息的发送必须在消息的接受前,
2017-01-30 23:05:06 338
原创 Java并发编程的艺术 读笔
在这段时间里看了Java相关的一些书籍,感觉对于Java的理解不再是对某一个关键字,方法的特性的记忆,而是对于其内在的原理开始有了思考。 Java并发编程的艺术这本书很久以前就被人推荐了,虽然书已经写得很不错了,但是能力有限…..对于一些内容的理解只能说是理解….. 于是准备对这本书的大概内容以及自己现在的理解记录,然后不断改进吧…..第一章 并发编程的挑战 介绍了并发编程中几种常见的问题:
2017-01-28 20:58:01 398
原创 BotZone的Pacman2
比完赛之后就一直没有更新了,一直有很多考试还有一些项目类上的学习…. 前些日子参加了第二届北京大学游戏对抗赛邀请赛,比赛平台上botzone上的Pacman2规则 比赛的一个星期的确是一个痛苦与快乐并存的一个星期,每天不断对于自己代码的改进,对于思路的扩展,对于其他人策略的判定…. 一开始采取的先对于路径的规划,然后通过对于其他的路径判定,来影响是否攻击判定。路径的判定通过搜索,贪心,模拟
2016-12-17 19:06:15 1678
原创 CCPC杭州赛区和ICPC大连赛区
连着两场比赛大连杭州赶着跑当前挺累的….. 结果一般般吧,两个铜牌….大连赛区里银牌其实挺近了,但是有时候就是差了那么一些。杭州就很无奈了,一题卡了精度,一题怎么改都是WA,然后重新写了一遍就一次AC了….. 明明之前希望的奖牌,当真的拿到,就又开始怀疑铜牌的意义有多大,看到各路大牛所达到的水平,感觉自己真是…. 总而言之,庸人自扰..不知道还会再去打几次比赛,不知道能不能拿到更好的成绩,的确
2016-10-20 19:49:31 700
原创 HDU 5886 - Tower Defence(最短路+最小割)
题目题意: n个点,m条边,构建有权无向图 告诉你有人从n点一定会选最短路走到1,然后你是1,要在某些地方设置障碍,要求断开N。思路: 比赛时理解出了问题,以为是使1与n不连通,即求整个图的最小割,实际上题目中要求对方一定走最短路,是要先跑最短路,根据最短路来建图,在新图上跑最小割就可以了。#include<iostream>#include<cstring>#include<cstdio
2016-09-22 21:51:28 439 1
原创 Hdu 3709 Balanced Number
题目:http://acm.hdu.edu.cn/showproblem.php?pid=3709思路:平衡数。枚举平衡位置,记忆化搜索的方式记录已有的值。加剪枝,排除掉重复的0。#include <iostream>#include <stdio.h>#include <stdlib.h>#include <string.h>#include <math.h>#include <map>
2016-09-21 21:46:01 265
原创 uestc1307 windy数 (数位DP)
题目题意: windy定义了一种windy数。不含前导零且相邻两个数字之差至少为2的正整数被称为windy数。 windy想知道, 在A和B之间,包括A和B,总共有多少个windy数?思路: 求长度小于len的windy数,长度等于len的windy数,这个数字本身的windy数。#include<iostream>#include<cstring>#include<cstdio>#inc
2016-09-21 20:43:00 312
原创 HDU5890 Eighty seven (数位DP)
连着打了几场的区域赛网络赛,虽然都打到了名额…但是感觉状态不好啊…明明会的题目,总是各种wa…..题意:给出一个区间[l, r],问其中数位中连续的奇数长度为偶数并且连续的偶数长度为奇数的个数。(1<=L<=R<= 9*10^18)思路:就是一个数位DP,但是很久没有敲了,看以前的代码找感觉….各种小细节的处理各种麻烦…比如前导零…#include <vector>#include <stdio.
2016-09-20 16:56:04 484
原创 HDU5538 House Building
题目题意: 看起来很长…就是告诉一个立体在二维平面上,每一个方格的高度,求这个立体的表面积…思路: 对于每一个方格,与上下左右的方格高度进行比较,较大,就加上差值,即为表面积。每一个高度大于等于1的方格再加上顶面的1.#include<cstdio>#include<cstring>#include<algorithm>using namespace std;int map[55][55]
2016-09-11 21:43:35 435
原创 HDU5532 Almost Sorted Array(最长不上升子序列)
题目题意: 给出n个数,问如果去掉其中一个数,能否构成不上升或者不下降的序列。思路: 求串的最长不上升或者不下降序列的长度,如果长度len>= n-1;就满足情况。#include<stdio.h>#include<string.h>#include<iostream>#include<algorithm>using namespace std; int T,n,i,j,k,a[1000
2016-09-11 20:30:55 544
原创 HDU5873 football game
题目题意: m个小组,每个小组n支队伍进行比赛,任意两支队伍之间有一场比赛 一场比赛里赢得+2分输的+0分,打平的话每队+1分 先给出每支队伍的得分,判断这些得分是否满足小组比赛的条件思路: 判断一些不可能的情况,比如两个0,得分大于全胜….剩下的就可以了#include<iostream>#include<cstring>#include<cstdio>using namespace
2016-09-10 21:16:34 434
原创 HDU5876 补图求最短路 2016ACM ICPC青岛网络赛
题目题意:给定一个无向图以及一个点s,求在其补图,点 s 到其他所有n-1个点的最短距离,并输出思路: 以原图求补图,,bfs遍历,把与点u相连的点排除,不相邻的点在补图里都与点u可以有一条权为1的边,访问完之后即把这些点从set里删除。 同时在bfs的过程中,记录dis[i],每向外一层,为dis[i+1]=dis[i]+1;#include<iostream>#include<cstdio
2016-09-10 21:04:50 829
原创 POJ 3436 ACM Computer Factory (网络流)
题目题意: 生产线是全自动化的,所以需要机器来组成生产线,给定有多少中种机器,标准ACM用电脑有多少部份,每种机器将什么样的ACM电脑半成品处理成什么样的电脑半成品(对于输入的电脑半成品,每部分有0,1,2三种状态:代表着 0、这部分必须没有我才能处理,1、这部分必须有我才能处理,2、这部分有没有我都能处理。对于输出的电脑半成品有0,1两种状态:代表着0,处理完后的电脑半成品里没有这部分,
2016-09-08 21:31:40 220
原创 HDU 4619-Warm up (二分图匹配)
题目 题意:给你两种纸牌 ,一种水平放置共有n张 ,一种竖直放置共有m张。水平放置的纸牌占据点(x, y)和(x + 1 , y) , 竖直放置的纸牌占据点(x , y) 和 (x , y + 1)。水平放置的牌之间不会重叠,竖直放置的牌之间也不会重叠,但是水平放置的牌和竖直放置的牌之间可能会重叠。让你拿走一些牌,使剩下的牌之间不会重叠并且数量最多,输出剩余的最大牌数。 思路:太久没有做二分图匹
2016-09-05 21:47:04 344
原创 SPOJ220---Relevant Phrases of Annihilation(后缀数组+二分,对后缀分组)
题目 题意:给定N个串,求每个串至少出现两次的最长子串 思路:二分枚举长度,根据长度len分组,若某组里的个数>=k,则说明存在长度为len的至少重复k次子串。#include <cstdio>#include <algorithm>#include <iostream>#include <cstring>using namespace std;const int MAXN = 1100
2016-09-05 19:18:14 342
原创 CSU1808 地铁
题目题意 : n个地铁站,m条线路,地铁站之间花费t时间,不属于同一条线路的地铁站需要“转站”,即加上一个额外花费w(w为线路代号的差值)。 求1到n的最短时间。 思路: 题意很清晰,就是一个最短路。与一般的不同的是多出来一个线路的概念,不同线路之间有花费。 一个站点可以属于多个线路。那么只需要将一个站点根据线路拆为多个点,通过新的点形成的图,相当于每一个点有一个flag,不同加上花费。
2016-09-04 15:40:36 1570
原创 HDU1251 统计难题
字典树 复习一下#include<iostream>#include<cstring>#include<cstdio>using namespace std;#define MAX 26typedef struct Trie_node{ int count; struct Trie_node* next[26]; bool exist;}TrieNode;TrieNod
2016-09-03 20:51:26 252
原创 Vasiliy's Multiset (异或字典树)
题目题意: 根据题目定义的三个操作,增加删除和查找异或最大的值。 + x: 表示向集合中添加一个元素x - x:表示删除集合中值为x的一个元素 ? x:表示查询集合中与x异或的最大值为多少input 10 + 8 + 9 + 11 + 6 + 1 ? 3 - 8 ? 3 ? 8 ? 11 output 11 10 14 13思路: 一种字典树的应用,当时没
2016-08-31 21:35:50 714
原创 Directed Roads (dfs 组合数学 图论)
题目题意:给一张N个点N条有向边的图,边可以逆向。问任意逆向若干条边使得这张图无环的方案数(mod 1e9+7)。思路: 只有两种情况反边不能消除环,处理全部不反向和全部反向两种情况.. 对于每一个环,我们都有2^n-2种方案使得这个环不存在,就是2^n减去全部翻转,和全部不翻转的方案。 最后再处理不在环上的边的数量就可以了。input 3 2 3 1 output 6#include<
2016-08-31 19:42:58 310
原创 Coloring Trees (三维DP)
B题没有考虑到除了0点以外,原来就不符合的情况,又掉分了….. 题目 题意: n颗树,每棵树可以涂m种颜色,把树分成k组,连续相同颜色的树为合并为一组 给出了n颗树的涂色情况,当涂色为0的时候,表示还没有涂颜色 给n * m 的矩阵,第i行j列为 第i个点,图j颜色的消耗 求n颗树涂颜色涂成k组时,用的最少消耗是多少思路: 状态方程: dp[i][k][j] 表示
2016-08-30 15:48:22 261
原创 AIM Tech Round 3 (Div. 2) -- D. Recover the String (构造字符串)
题目 题意: 给你一个只包含01的字符串,告诉你00,01,10,11子字符串的个数,还原这个字符串。不能存在则输出Impossible.Examples input 1 2 3 4 output Impossible input 1 2 2 1 output 0110从00和11的个数,可以算出字符串中0和1的个数,然后即可构造。但当a00,a11中有为0的情况下,需要特殊考虑
2016-08-25 20:21:28 524
原创 HDU5795 博弈
多校的题目题意,nim游戏,n堆石子,可在一堆中取任意个,也可把一堆分为三堆,最后取完的胜思路:打表找规律。。x=8k+7时,sg[x]=x+1,x=8k+8时,sg[x]=x-1,其余情况,sg[x]=x。打表代码:#include<string>#include<cstring>#include<sstream>#include<iostream>#include<cmath>#inc
2016-08-19 15:09:33 360
原创 HDU 5855 Less Time, More profit 【最大流-最大权闭合子图】
作为多校签到题的存在…. 题意: n个工厂,m个商店 每个工厂有建造时间 ti ,花费 payi 每个商店和k个工厂有关,如果这k个工厂都建造了,那么能获利 proi 问你求收益(∑pro−∑pay)≥L时,首先满足时间t最小,其次是收益p最大 #include<iostream>#include<cstring>#include<cstdio>#include<set>using
2016-08-16 22:57:58 648
原创 BZOJ 2669 cqoi2012 局部极小值 状压DP+容斥原理
在CCPC上遇到由此改编的原题,然而并没有做出来….. 题意:给定一个n∗m 的矩阵,标记出其中的局部极小值,要求填入1…n∗m ,求方案数Sample Input 2 4 .X.. …X 4 2 X. .. .. X. 1 2 XXSample Output Case #1: 2100 Case #2: 2520 Case #3: 0由于局部极小值最多8 个,我们可以状
2016-08-15 21:39:57 463
原创 博弈论 SG函数
(1) 玩家:2人; (2) 道具:23张扑克牌; (3) 规则: 游戏双方轮流取牌; 每人每次仅限于取1张、2张或3张牌; 扑克牌取光,则游戏结束; 最后取牌的一方为胜者。 想一下。。 首先申明一点,博弈的讨论是在大家都玩的最好的情况下讨论的。(如果2个玩家智商有差别,那就没法讨论了~~~~开个玩笑哈。) 介绍概念:P点 即必败点,某玩家位于此
2016-08-06 15:31:04 423
原创 POJ2774 Long Long Message (后缀数组—最长公共子串)
题目题意:给定两个字符串 A 和 B ,求最长公共子串。A 的后缀和 B 的后缀的最长公共前缀的最大值。如果枚举A和 B 的所有的后缀,那么这样做显然效率低下。由于要计算 A 的后缀和 B 的后缀的最长公共前缀,所以先将第二个字符串写在第一个字符串后面,中间用一个没有出现过的字符隔开,再求这个新的字符串的后缀数组。观察一下,看看能不能从这个新的字符串的后缀数组中找到一些规律。以 A=“ aaaba
2016-07-31 22:53:53 367
原创 POJ3261 Milk Patterns
题目题目大意: 求可覆盖的出现k次的子串的最大长度。思路分析: 二分答案的长度,然后扫描height判断是否成立。 排名第i的字符串和排名第j的字符串的最长公共前缀等于height[i],height[i+1],…,height[j]中的最小值,所以把所有不小于k的height[]看成一组就保证了组内任意两个字符串的最长公共前缀都至少为k,且长度为k的前缀是每个字符串共有的,因此这组内有多少个
2016-07-31 17:22:32 238
原创 Android 快传 文件互传
一个月没有更新内容,因为想要实践一下自己的理论知识,于是参加了一个软件类比赛,选题为移动设备之间的文件互传。 不得不说,实践的确是锻炼解决问题能力的最好办法。 遇到了很多自己在一般demo中,并没有发现的问题,并且学习很多新的知识。 准备将这个Android实例的开发过程记录。软件功能:各类型文件的快速访问实现手机的文件的快速分享通过电脑对于手机的文件访问主要技术:1.文件阅览:
2016-05-30 23:50:58 7590 6
原创 第一行代码 读笔⑦ (Service 多线程基础)
服务 android多线程编程 服务的基本用法 服务的生命周期 服务技巧服务(Service): 在Android中实现程序后台运行的解决方案,本身的运行并不依赖于用户可视的UI界面。 适用:并不依赖于用户可视的UI界面(不一定,前台Service就是与Notification界面结合使用的)不需要和用户交互而且要求长时间运行 服务依赖于创建服务的所在的应用程序进程。(进程被杀死,依赖该进程
2016-04-22 22:02:47 600
转载 ContentProvider
转自:http://www.cnblogs.com/linjiqin/archive/2011/05/28/2061396.html 想写的归纳….但是还是觉得别人写的详细明白…一、使用ContentProvider(内容提供者)共享数据ContentProvider在android中的作用是对外共享数据,也就是说你可以通过ContentProvider把应用中的数据共享给其他应用访问,其他应用可
2016-04-18 20:28:23 211
原创 第一行代码 读笔⑥ (存储)
数据存储方案,详解持久化技术持久化技术 文件存储 SharedPreferences存储 SQLite数据库存储持久化技术: 将内存中的瞬时数据保存到存储设备中,其提供了一种机制让数据再瞬时状态与持久状态之间相互转换。 Android主要提供了三种方式:文件存储:最基本的数据存储方式,不对存储数据进行任何格式化处理,适于存储简单文本数据或二进制数据。SharedPreference存储:
2016-04-15 22:04:55 352
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人