自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Andriod HashMap与ArrayMap分析

hashmap可以说是一个功能强大,且非常常用的工具。但是在移动平台上,google对于某些情况下并不推荐使用hashmap。正所谓魔鬼藏在细节之中,今天我们就从源码分析看看,hashmap带来的性能损耗是从哪里来的,我们又如何去避免。只有在细节处处注意性能,我们才能构建出高性能的app。HashMap我们首先从hashmap的put方法看起 final V putVal(int hash, K key, V value, boolean onlyIfAbsent,

2021-06-10 17:18:01 322

原创 FlatBuffers源码解析

在观看谷歌发布的视频时,发现视频将json或者xml成为网络传输中的horrible type。这让天天和json打交道的我感觉很疑惑,后面提到了谷歌的FlatBuffers,仿佛打开新世界的大门。虽然我现在开发的业务json的解析并不是瓶颈,但是想到后端每天几千万次的访问量,我在想后端同学会不会有这方面的瓶颈。。。总之先介绍一下FlatBuffers。首先我们知道json是基于字符串和各种特殊字符进行解析的,这也就意味着我们在解析的时候需要将数据先整理成标准的json格式,这其中的内存和时间开销较大。

2021-04-19 19:44:23 540 2

原创 Android Performance Patterns 系列视频学习记录(持续更新中)

系列文章旨在记录YouTube上谷歌发布的Android Performance Patterns系列视频,一共79个视频,每个视频也就几分钟。当然对于大部分安卓开发者来说,这些都是基础,可能你会说,看这些有什么用呢。但是魔鬼往往藏在细节之中,切忌眼高手低的问题。本人英语水平有限,加之理解和经历尚浅,如果错误和不当之处欢迎指正。1.关于线程那些事 众所周知,安卓系统中,主线程(UI线程)是十分重要的,很多工作如绘制、与用户交互事件处理等工作都会在主线程执行 ...

2021-04-12 15:02:40 395

原创 技术日记----2020.9.7

正式成为度厂的一名咸鱼安卓程序员,完成了一个大版本需求的开发。立志技术博客一月两更,先立个flag,前期计划记录一些开发中遇到的坑,勉强称其技术日记。希望之后可以多造一些轮子,希望和看到这篇文章的你一起成长。经过了一个月对业务代码的熟悉和编写,我对于业务逻辑本身的内容并无太多的内容需要记录,当然除了判空(千万要记住)。看了大佬封装的线程相关工具类,不如就从简单的但是最重要的线程开始,整体理清一下思路。有一定操作系统基础知识的同学都知道,线程可以成为轻量的进程,具有极其有限的一部分独立..

2020-09-07 19:25:21 139

原创 Pointnet++结构记录

对于上篇提到的pointnet,虽然很好的完成了对点云特征的提取,但只是简单的将所有点连接起来,只考虑了全局特征,丢失了每个点的局部信息。进而pointnet++模型被提出,pointnet++的整体思想就是:首先选取一些比较重要的点作为每一个局部区域的中心点,然后在这些中心点的周围选取k个近邻点(欧式距离的近邻)。再将k个近邻点作为一个局部点云采用pointnet网络来提取特征。...

2020-03-14 14:54:28 336

原创 PointNet学习笔记----------毕业设计记录

宅在家里懒惰成性 大致记录一下学习心得模型输入为三通道点云数据(x,y,z),也可以有额外的通道比如颜色、法向量等,输出整体的类别/每个点所处的部分/每个点的类别。对于目标分类任务,输出为k个分数,分别对应k个可能的类别。对于语义分割任务,输出n x m个分数,分别对应n个点相对于m各类别的分数。模型结构输入n个三维向量构成的矩阵 通过T-Net进行预...

2020-02-27 14:10:41 336 2

原创 二分贪心专题A

“今年暑假不AC?”“是的。”“那你干什么呢?”“看世界杯呀,笨蛋!”确实如此,世界杯来了,球迷的节日也来了,估计很多ACMer也会抛开电脑,奔向电视了。作为球迷,一定想看尽量多的完整的比赛,当然,作为新时代的好青年,你一定还会看一些其它的节目,比如新闻联播(永远不要忘记关心国家大事)、非常6+7、超级女生,以及xxx的《开心辞典》等等,假设你已经知道了所有你喜欢看的电视节目的...

2019-10-15 10:51:53 209

原创 OpenGL中关于组合变换的理解

最近计算机图形学上的一头雾水,在看红宝书的时候看到一个机器人手臂的例子,感觉对理解局部坐标系很有帮助。记录一下学习过程。首先我们知道在opengl中有各种坐标系。其中比较重要的是世界坐标系和对象坐标系。初始状态,世界坐标系和对象坐标系重合,而我们做出几何变换如缩放移动旋转等,对象坐标系就会发生变化,之后我们绘制的图形也会基于当前的坐标系。void display7() { ...

2019-03-19 16:55:38 422

原创 Android仿微信的图片裁剪库 ------ 持续开发中(裁剪框与图片的联动)

终于分解的步骤基本已经完成了,接下来我们讲一下裁剪框和图片的联动以及动画的更新。其实从前面几次的讲解,其实简单来说就是两个RectF的维护-----裁剪框和图片。那么除了移动以外我们主要做的就是找到动画开始和结束的状态,也就是两个RectF的。接下来我们拓展一下我们的估值器,让它也计算裁剪框的RectF的变化if (startValue.winFrame != null)...

2019-03-12 17:26:16 917

原创 Android仿微信的图片裁剪库 ------ 持续开发中(裁剪框相关)

我们已经实现了图片的缩放以及图片的归位和动画,下面我们可以尝试加入裁剪框数据层控制裁剪框的移动我参考了网上的开源项目,个人认为方法比较巧妙,但是使用的方法可能乍一看让人有点摸不着头脑,借此机会我也来学习和解析一下。一般来说,裁剪框具有八个可操作的区域:四个角和四个边enum Anchor { LEFT(1), RIGHT(2), ...

2019-03-11 12:53:22 655

原创 Android仿微信的图片裁剪库 ------ 持续开发中(图片相关动画的定制)

emmm发烧了两天,今天我们开看看图片动画的相关知识。关于动画我一直是接触很少,也没有细心去学过。我们上节课讨论过,图片的显示其实就是维护一个RectF对象,再使用重绘方法即可完成显示效果。而由于简单的动画并没有涉及view相关属性的变化,所以我们需要为Animator注册监听,监听动画的update,以此对相关属性就行修改,以维护好状态关于估值器相关知识大家可以...

2019-03-10 19:02:05 287

原创 Android仿微信的图片裁剪库 ------ 持续开发中(基本的图片缩放滑动功能)

经过魔改接入过开源的图片裁剪框架。但是总是心有不甘,感觉这样不会有什么提升,于是回学校之后整理思路纯手撸了一个,当然有些思路还是借鉴了各种开源框架。但是总归是自己写出来的还是有点激动的!这是本人第一次尝试完全从头写View,欢迎各位大佬指教。好的步入正题,首先我们先从图片的缩放开始。ZoomImageViewfun drawImage(canvas: Canvas?) {...

2019-03-07 23:19:25 464

原创 剑指offer-2

请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 题目初看十分简单,就是简单的遍历然后判断是否为空格再删除空格进行插入。这里有一个问题时完成一次插入之后后面空格的序号都会发生偏移。这里我用offset记录偏移量。记录下所有的空格位置,再用一个循环单独进行修改。代码如...

2018-11-11 14:48:28 181

原创 剑指offer-1

在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 一个很简单的搜索题。既然给出了有序的数组那么暴力搜索显然不是最佳答案很显然能想到二分搜索,由于数组从左到右逐渐增大,所以我们从第0列开始对每一列进行二分搜索,当某一列的第一个数大于我们的targ...

2018-11-11 14:24:50 89

原创 二分贪心专题F

Farmer John is an astounding accounting wizard and has realized he might run out of money to run the farm. He has already calculated and recorded the exact amount of money (1 ≤ moneyi ≤ 10,000) that h

2017-01-30 00:54:38 210

原创 二分贪心专题E

FJ is about to take his N (1 ≤ N ≤ 2,000) cows to the annual"Farmer of the Year" competition. In this contest every farmer arranges his cows in a line and herds them past the judges.The contest orga

2017-01-30 00:49:53 167

原创 二分贪心专题D

The annual Games in frogs' kingdom started again. The most famous game is the Ironfrog Triathlon. One test in the Ironfrog Triathlon is jumping. This project requires the frog athletes to jump over th

2017-01-30 00:06:47 240

原创 二分贪心专题C

Give you three sequences of numbers A, B, C, then we give you a number X. Now you need to calculate if you can find the three numbers Ai, Bj, Ck, which satisfy the formula Ai+Bj+Ck = X. InputThe

2017-01-20 12:31:24 276

原创 二分贪心专题B

There is a pile of n wooden sticks. The length and weight of each stick are known in advance. The sticks are to be processed by a woodworking machine in one by one fashion. It needs some time, called

2017-01-20 12:21:17 217

原创 hdu2995

RobberiesTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 21460    Accepted Submission(s): 7942Problem DescriptionThe aspiring Roy the Robber

2016-11-15 18:11:01 296

原创 sduoj3470

吃西瓜Time Limit: 1s Memory Limit: 128.0 MBProblem Submit Status Rank DiscussDescriptionACM暑假集训是一件特别辛苦的事情,聪明的甫神为了给实验室成员创造一个舒适的环境,决定自己出资使实验室成员每天都可以吃到新鲜的西瓜,甫神想让女神找到一个最佳的购买方案,能够使总花费最小,又要保证

2016-11-15 17:45:16 356

原创 hdu1426

Sudoku KillerTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 6905    Accepted Submission(s): 2145Problem Description自从2006年3月10日至11日

2016-11-06 22:37:28 222

原创 hdu1584

蜘蛛牌Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 3103    Accepted Submission(s): 1338Problem Description蜘蛛牌是windows xp操作系统自带的一款纸牌

2016-11-03 20:40:19 508

原创 hdu1016

Prime Ring ProblemTime Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 44334    Accepted Submission(s): 19653Problem DescriptionA ring is

2016-11-03 14:29:48 207

原创 hdu1241

Oil DepositsTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 25760    Accepted Submission(s): 14830Problem DescriptionThe GeoSurvComp

2016-11-03 13:27:39 245

原创 hdu1005

Number SequenceTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 157703    Accepted Submission(s): 38622Problem DescriptionA number se

2016-11-02 07:54:54 181

原创 hdu1003(蒟蒻在成长)

Max SumTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 224167    Accepted Submission(s): 52732Problem DescriptionGiven a sequence a[

2016-11-01 18:35:40 322

空空如也

空空如也

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

TA关注的人

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