自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 面试经历之阿里云

阿里云弹性计算团队春招实习内推面试+阿里云盘古团队秋招内推面试。(实习内推面试挂在二面,秋招内推面试已经面完hr)首先是学长帮忙内推了他们组的春招实习,过程十分坎坷。18年春节前阿里云的一个SDN团队招实习生,我报名了,接受了内推,在第一次面试后就挂掉(不太明白为啥),但是由于每个人一个批次只能内推一次,所以内推学长组的时候,找了很久的客服,最后由于我的拒绝理由是转部门,所...

2018-08-17 23:31:00 944

转载 JPEG格式压缩算法

一、JPEG原理概述二、JPEG原理详细分析及压缩算法过程1、Color Model Conversion (色彩模型)2、DCT (Discrete Cosine Transform 离散余弦变换)3、数据量化4、重排列 DCT 结果5、基于差分脉冲编码调制的DC编码6、RLE编码7、范式Huffman编码8、JPEG压缩过程总结...

2018-07-22 11:57:00 1571

转载 CUDA处理jpeg缩略图

  缩略图的处理有很多种,比如之前写的go自带的image库,imagick库,libjpeg-turbo等等,今天来总结一下如何用CUDA处理jpeg的缩略图。  首先简单介绍一下CUDA,CUDA是Nvidia公司的GPU编程平台,通俗来说就是将CPU作为主机端,显卡作为设备端,将大批量的运算任务放在GPU上完成,这样做的好处就是能充分利用GPU的多核心运算能力优化程序,使程序效...

2018-05-24 22:41:00 247

转载 常用Linux命令

最近工作常用到一些没用过的linux命令,记录一下,常更新。2018.4.24查看图片尺寸:identify filename查看jpg格式,file filename查看png格式,需要先安装imagemagick。查看文件夹下文件个数:ls -l | grep "^-" | wc -l,不包括文件夹。"^d"是目录的数量。查看文件夹总大小:du -s path...

2018-04-24 12:56:00 73

转载 Go初接触之imagick

  imagemagick是一个著名的图片处理库,github上有人将其封装成了golang能用的库,所以依旧是写一个缩略图的程序。今天看项目源码看的我头都大了。 1 package main 2 3 import ("fmt" 4 "gopkg.in/gographics/imagick.v2/imagick") 5 6 func GetComp...

2018-04-18 19:18:00 930

转载 Go初接触之libjpeg-turbo

  libjpeg-turbo是一个效率很高的图片处理的C库,所以严格来说放在Go这里不太妥当,但是之后我们会把它封装成Go可以调用的类库。据说libjpeg-turbo在处理jpeg格式图片时比ImageMagick库效率高了三倍,参照示例代码写了一个缩略图的功能: 1 // 2 // main.cpp 3 // libjpegturbo 4 // 5 //...

2018-04-18 13:34:00 280

转载 Go初接触之归并排序

  刚开始接触go语言,有些不适应,整体和C有些相像,所以学起来也不太困难,但是刚接触也感觉到了go在很多方面的强大。掌握了go的基本语法,简单写个归并排序练习一下: 1 package main 2 3 import ( 4 "fmt" 5 ) 6 7 func hebing(arr []int8, left int8, mid int8, ...

2018-04-17 21:00:00 72

转载 Go初接触之image

  被分到了云平台方向,正好是leader的负责部分,所以就是他来带我,瑟瑟发抖。昨天他让我熟悉了一下go语言,今天上午上班后就来找到我,给我布置了一下这几天的任务。由于我们所有方向做图像处理都比较多,所以要熟悉go中的image库,之前水神他们上线的项目用的是imagemagick库来处理图片,现在我们打算换成用libjpeg-turbo来进行图像处理,据说这样的效率是使用imagem...

2018-04-17 20:57:00 200

转载 面试经历之百度

百度大数据部实习生岗:本来内推的百度大搜,结果简历直接被挂了,有点小意外,但是回头看我第一版简历,确实有点low,幸好又邮件投了大数据。提前面:这个名字是我瞎起的,我也不知道叫啥,我一直以为这个面试就是一面,但是直到3月份我才知道这次面试只是大数据部想要了解一下我个人的基本情况和水平。面试时间大概是1月初,电话来的很突然,毫无准备地面试了。自我介绍一下。你的...

2018-03-20 16:21:00 65

转载 面试经历之今日头条

今日头条主端后端研发实习生岗:(面试已经结束快半年了,凭借记忆来写一下)一面:自我介绍一下。根据我的空间数据库项目,提问我项目中有关R树,B树等数据结构方面的问题,由于项目那个时候还没有做,就凭着项目立项答辩之前查的资料答了一些我知道的。算法题目只有一道:给n个数字,求所有两两组合中异或和最大的值。这是一道经典的字典树问题,我首先答了O(n2)的暴力算法,然...

2018-03-17 21:45:00 102

转载 《Linux高性能服务器编程》学习总结(十三)——多进程编程

  在多进程编程中,我们用fork系统调用创建子进程,值得注意的是,fork函数复制当前进程并在内核进程表中创建一个新的表项,其堆、栈指针,标志寄存器的值都和父进程相同,但是其ppid被设置成父进程pid,信号位图被清除。而子进程代码和父进程完全相同,其数据也会复制自父进程,但是其复制过程是写时复制,即父子任意进程对数据执行写操作时才会复制,首先是缺页中断,然后操作系统给子进程分配空间并...

2018-02-27 20:00:00 122

转载 《Linux高性能服务器编程》学习总结(十二)——高性能I/O框架库Libevent

  书上内容不多,已下载Libevent源码,待学习。转载于:https://www.cnblogs.com/Torrance/p/8480628.html

2018-02-27 19:57:00 151

转载 《Linux高性能服务器编程》学习总结(十一)——定时器

第十一章 定时器  这里的定时器主要指的是定时器容器,TCP连接中有保活定时器,为了定期查看TCP连接是否断开,可以用socket选项实现,但是较为麻烦,所以一般都由应用层负责保活,这是定时器的一个运用场景,或者在应用层需要执行一些定时操作,这样就需要一个高效的定时器容器,主要是时间轮和时间堆,当然定时器也可以用SIGALRM信号以及I/O复用实现。  socket选项中我们使用...

2018-02-13 14:31:00 185

转载 《Linux高性能服务器编程》学习总结(十)——信号

第十章 信号  Linux中信号是由用户、系统或进程发送给目标进程的信息,用来通知进程某个状态的改变或系统异常,其产生条件如下:1)对于前台进程,用户可以通过输入特殊的终端字符来发送信号,比如Ctrl+C发送中断信号;2)系统异常;3)系统状态变化,如SIGALRM信号;4)运行kill命令或使用kill函数。服务器程序必须处理一些常见的信号,以避免异常终止。  我们来...

2018-02-10 20:51:00 105

转载 《Linux高性能服务器编程》学习总结(九)——I/O复用

第九章 I/O复用  I/O复用技术是重要的提高服务器工作效率和性能的手段,Linux下实现I/O复用的系统调用主要有select、poll和epoll。  首先我们来看一下select的函数原型和常用的宏:1 #include<sys/select.h>2 int select(int nfds, fd_set* readfds, fd_...

2018-02-06 23:04:00 154

转载 《Linux高性能服务器编程》学习总结(八)——高性能服务器程序框架

第八章 高性能服务器程序框架  我们将服务器一般分为三个主要模块,I/O处理单元、逻辑单元及存储单元。常用的服务器模型有C/S模型和P2P模型,比较简单。我们来看一下网络编程中的I/O模型。首先我们要了解阻塞模型和非阻塞模型的区别,socket在创建时默认是阻塞的,可以在socket系统调用的第二个参数传递SOCK_NONBLOCK标志或者通过fcntl将其设置为非阻塞,针...

2018-02-03 20:05:00 190

转载 《Linux高性能服务器编程》学习总结(七)——Linux服务器程序规范

第七章 Linux服务器程序规范  服务器程序除了需要网络通信外,还应该考虑很多其他的细节,而这些细节很多很杂,但又基本是模板式的。1)服务器程序基本都是以后台形式运行的,没有控制终端,不能接受用户输入,其父进程通常是init。2)服务器程序有一套日志系统。3)服务器程序以某个专门的非root身份运行。4)服务器通常是可配置的。5)服务器进程启动时通常会生成一个PID文件以...

2018-02-03 12:22:00 72

转载 《Linux高性能服务器编程》学习总结(六)——高级I/O函数

第六章 高级I/O函数  网络I/O一直是Linux网络编程中极其重要的一部分,除了前面讲到的send、recv等,socket编程接口还给出了很多高级了I/O函数,这些函数大致分为三类:用于创建文件描述符的函数、用于读写控制的函数和用于控制I/O行为和属性的函数。  pipe函数是用来创建一个管道,管道是较为原始的进程间通信手段,分为无名管道和有名管道,而无名管道只能...

2018-02-02 22:07:00 131

转载 《Linux高性能服务器编程》学习总结(五)——Linux网络编程基础API

第五章 Linux网络编程基础API  对于网络编程,首先要了解的就是字节序的问题,字节序分为主机字节序和网络字节序,主机字节序又称小端字节序,是低字节存放在地地址,而网络字节序又称大端字节序,是低字节放在高地址。当数据在不同的机器上传播时,就需要统一字节顺序以保证不出现错误。在发送数据前,先将需要转变的数据转成网络字节序再发送,接收时先转成主机字节序再处理,要特别注意的是...

2018-02-01 22:50:00 95

转载 《Linux高性能服务器编程》学习总结(四)——TCP/IP通信案例:访问Internet上的Web服务器...

第四章 TCP/IP通信案例:访问Internet上的Web服务器  HTTP协议是工作在应用层上的协议,其应用十分广泛,而在进行通信的过程中,经常使用HTTP代理服务器。HTTP代理服务器主要分为:正向代理服务器,反向代理服务器和透明代理服务器。其中,正向代理服务器要求客户端自己设置代理服务器的地址,客户的每次请求都直接发送至该代理服务器,并由代理服务器来请求目标资源。比...

2018-02-01 14:41:00 147

转载 《Linux高性能服务器编程》学习总结(三)——TCP协议详解

第三章 TCP协议详解  TCP协议是TCP/IP协议族中另外一个重要的协议,作为传输层上的协议,它更靠近应用程序,所以具有更强的可操作性,许多socket选项都是针对TCP协议设置的。  我们在第一章提到过,传输层协议主要有两个,TCP协议和UDP协议,并说明了两者的区别,简单来说,TCP协议双方再数据传输之前需要先建立连接,并为该连接分配必要的内核资源,完成数据交换...

2018-02-01 00:32:00 114

转载 《Linux高性能服务器编程》学习总结(二)——IP协议详解

第二章 IP协议详解  IP协议是TCP/IP协议族中的核心协议,也是socket网络编程的基础之一。IP协议的特点是为上层提供无状态、无连接、不可靠的服务。  无状态是指IP通信双方不同步传输数据的状态信息,通俗一些说就是双方发送的IP数据报是相互独立的,没有任何上下文关系。这样的特性缺点在于无法处理重复和乱序的IP数据报,举个例子,假设由于网络原因或者IP选路的原因...

2018-01-30 22:48:00 126

转载 《Linux高性能服务器编程》学习总结(一)——TCP/IP协议族

  在学长的推荐下,我用了大约半个月的时间学习了游双老师的《Linux高性能服务器编程》一书。通读此书,感觉这本书在知识广度上已经很足,对网络协议与编程方面的基础知识栈都有讲解,语言也比较通俗易懂,确是一本对于有一定网络基础也想继续深入学习的同学的好书,但由于篇幅有限,对于部分知识点的讲解没有深入。  本书共分为三大部分:第1章到第4章主要讲了常用的TCP/IP协议,以及其通信过程,...

2018-01-30 20:47:00 303

转载 省赛总结

商大举办的为期两天的省赛结束了,这是进入大学以来第一次真正的大型比赛,从结果来说,达到了赛前的目标,省二等奖(主要是可以免费春游~),但是从我的内心其实对成绩不算太满意,感觉队伍没有发挥全部实力(虽然超水平发挥也不可能拿一等,最多是排名再靠前一些)。不过尽管如此,总体来说还是很不错了,用队友的话说,就算再a两道题,以我们的速度和罚时,也是二等奖,所以单单从成绩来讲也没什么可不满足的了。...

2016-05-16 00:24:00 94

转载 算法分类整理+模板③:RMQ

最开始是打算以LCA作为第三篇算法整理的,但是由于学习LCA时发现自己的RMQ学习的不够扎实,所以先复习一下RMQ。本文感谢队友某淞的学习笔记。最初看到RMQ模板的时候感觉好高端,感觉里面的各种数组,位移运算非常复杂。所以对于任何算法的学习我觉得都要分为以下的几步进行:1、了解这种算法能解决什么类的问题。2、知道这种算法的最坏时间复杂度和期望时间复杂度,今后看到题的时候能通过数据...

2016-05-04 17:04:00 96

转载 【HDU 1889】Reaux! Sham! Beaux!(模拟+水题)

传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1889题意:给出一个表,每个国家的石头剪子布的叫法,给两个人用自己国家的语言进行石头剪子布,进行统计,最后输出胜负信息。分析:就是模拟,先用map去映射每一个字符串,3种分别为1,2,3,然后进行统计判定即可,注意坑点就是输出时候有单复数区别,还有输出格式比较容易错。代码:...

2016-05-02 15:20:00 93

转载 【HDU 1887】Weird Numbers(负进制转换)

传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1887题意:有两种操作,from-r n代表把一个-r进制下的数字n转换成10进制,to-r n代表把一个10进制下的数字n转化成-r进制。分析:两种操作中from操作很容易实现,和转换成正进制一样,没什么好说的,而to操作我们首先可以像正常转化一样进行短除法,举个例子:把15转化为...

2016-05-02 15:03:00 85

转载 【HDU 2586】How far away?(最近公共祖先)

传送门:http://acm.hdu.edu.cn/showproblem.php?pid=2586题意,求一棵树上任意两点的权值和。分析:在没学最近公共祖先之前一直以为这是道最短路的题,学了最近公共祖先发现利用最近公共祖先去求解十分方便。拿到这个题最先的思路是用Tarjan求LCA的时候,当找到了LCA,用dis数组记录两个询问的点到LCA的距离,但是敲的过程中发现这样不好进行...

2016-05-01 15:14:00 141

转载 【POJ 1330】Nearest Common Ancestors(最近公共祖先)

传送门:http://poj.org/problem?id=1330题意:很裸的最近公共祖先,看题就知道…模板题。代码:/* ***********************************************Author :Torrance_ZHANGCreated Time :2016/4/29 22:11:34File Name...

2016-05-01 12:10:00 68

转载 【CF 138A】Literature Lesson(字符串处理+模拟)

传送门:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=114353#problem/F第一次pc^2练习赛,队内大腿回家,没有比赛……比的艰辛无比。题意:每4句诗构成一组,分为4种韵律,aabb,aaaa,abab,abba。一首长诗如果每组都是一种韵律,那么整首诗的韵律就是这种,如果是由aaaa和其他韵律构成的,那么...

2016-04-30 23:31:00 148

转载 算法分类整理+模板②:字符串处理

本周训练赛出了一道kmp模板题,但是由于长时间没有复习字符串处理算法,而且学习时也并没有彻底理解,只是大概明白了思路,所以导致比赛时迟迟没有做出这一题,最后现场拿出学校整理的材料现场重新学习才ac的这一题。趁这个机会整理一下常用的字符串处理算法以及模板。字符串处理在比赛中一般都不是特别难(至少我遇到的没有),有的字符串处理会和dp放在一起出题,加大一些难度,而单纯的字符串处理其...

2016-04-29 20:37:00 105

转载 【HDU 1687】Lucky Light(思维+计算几何)

传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1687题意:有一个光源,下面有很多放置的板子,问光线被板子分割之后在地上能产生多少块亮区(看题中的图就能看懂)。分析:这个题的做法和省选第一天的C题很像,由于是求在地面上,也就是一条直线上的亮区,我们可以求出地面上被木板遮挡形成的暗区的左坐标和右坐标,然后合并区间就可以了。而求地面上的坐...

2016-04-29 11:13:00 70

转载 省选总结

为期两天的省选终于在今天结束。对于结果来说,总体是满意的,但是还是看到了很多自己以及队伍的不足之处。写此博客只为时刻提醒自己做的还不够好,应该更加努力,未来的舞台会更大,我们面临的挑战也会更加艰难!逐梦之路,道阻且长。第一天ac3题,第二天ac2题,共ac5题,成绩看起来惨不忍睹,但是赛后百度了一下,14年东京区域赛的题,瞬间心情好了一点(亮哥你也真是够狠的...)。赛前我们做了去年...

2016-04-24 23:13:00 106

转载 算法分类整理+模板①:矩阵快速幂

一直有一个想法,感觉自己很多基础算法不是很扎实,想要找个机会写一些算法的整理,顺便自己总结一些实用的模板。最近偶然在训练赛中连续做了2道思维+矩阵快速幂的题目,碰巧有时间,就以矩阵快速幂作为这个系列博客的开始吧。如果想要了解矩阵快速幂,首先要了解什么叫做快速幂。举个例子,如果让你求2^10的值,一个for循环可以轻松地解决问题,但是如果是2^10000000000000...

2016-04-22 13:30:00 45

转载 【FZU 1911】Construct a Matrix(矩阵快速幂+找规律)

传送门:http://acm.fzu.edu.cn/problem.php?pid=1911题意:数列fn为斐波那契数列,sn为fn的前n项和,设r=sn%m,求一个r*r的矩阵,矩阵元素只能为0,-1,1使得矩阵每行每列的和没有重复。分析:我们知道fibonacci数列的前n项和S(n)=2*F(n)+F(n-1)-1,而本题中n的取值范围很大,所以求前n项和需要用矩阵快...

2016-04-20 15:11:00 109

转载 【ZOJ 2974】Just Pour the Water(矩阵快速幂)

传送门:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2974题意 给出n个杯子与初始水量同时进行操作 将其中的水同时平均分入所指定的杯子 进行x次后 输出杯子剩余水量刚拿到这个题,第一反应是递推找规律,但是因为每个杯子的初始水量是未知的,所以能找的只是每个杯子水量与其余杯子水量的关系。但是看到...

2016-04-19 23:33:00 111

转载 博客搬家 from csdn to cnblog

因队友和学长都在cnblog,转战博客园。转载于:https://www.cnblogs.com/Torrance/p/5410610.html

2016-04-19 22:51:00 23

转载 【FZU 2215】Simple Polynomial Problem(后缀表达式+栈的应用)

D -Simple Polynomial ProblemTime Limit:1000MSMemory Limit:32768KB64bit IO Format:%I64d & %I64uSubmitStatusPracticeFZU 2215DescriptionYou are given an polyno...

2016-04-04 22:58:00 125

转载 【POJ 1276】Cash Machine(多重背包)

Cash MachineTime Limit:1000MSMemory Limit:10000KTotal Submissions:31179Accepted:11211Description A Bank plans to install a machine for cash withdra...

2016-03-16 22:54:00 72

转载 【POJ 1936】All in All(字符串处理)

All in AllTime Limit:1000MSMemory Limit:30000KTotal Submissions:30743Accepted:12827Description You have devised a new encryption technique which en...

2016-03-16 22:41:00 103

空空如也

空空如也

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

TA关注的人

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