首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
湘江Coder
掘友等级
获得徽章 6
动态
文章
专栏
沸点
收藏集
关注
作品
赞
267
文章 267
沸点 0
赞
267
返回
|
搜索文章
最新
热门
数据结构——哈夫曼(Huffman)树+哈夫曼编码
哈夫曼编码(Huffman Coding),又称霍夫曼编码,是一种编码方式,哈夫曼编码是可变字长编码(VLC)的一种。Huffman于1952年提出一种编码方法,该方法完全依据字符出现概率来构造异字头的平均长度最短的码字,有时称之为最佳编码,一般就叫做Huffman编码(有时也…
去除重复字母(LeetCode-困难)
给你一个仅包含小写字母的字符串,请你去除字符串中重复的字母,使得每个字母只出现一次。需保证返回结果的字典序最小(要求不能打乱其他字符的相对位置) 通过一个while循环找到将栈中位置错误的数据,出栈. 找当前合适的位置,则结束while循环;
几种常见的排序
假设含有n个记录的序列列为(r1,r2,.....,rn). 其相应的关键字分别为{k1,k2,......,kn}. 需确定 1,2,......,n 的⼀一种排序p1,p2,......pn. 使其相应的关键字满⾜足kp1 <= kp2 <= .....…
OC-底层原理-39-组件化(二)组件间通讯方式
这些动态化的方案的优点是实现简单,缺点是需要维护字符串表,或者依赖于命名约定,无法在编译时暴露出所有问题,需要在运行时才能发现错误。 当组件A需要调用组件B时,向ModuleManager传递URL,参数跟随URL以GET方式传递,类似openURL。然后由ModuleMana…
OC-底层原理-38-组件化(一)方案
当项目因为各种需求,越来越来时,如果此时的各个模块之间是互相调用,即你中有我,我中有你这种情况时,会造成高耦合的情况。一旦我们需要对某一块代码进行修改时,就会牵一发而动全身,导致项目难以维护 1、修改某个功能时,同时需要修改其他模块的代码,因为在其他模块中有该模块的引用。可以理…
OC-底层原理-37-界面优化方案
最开始时,FrameBuffer只有一个,这种情况下FrameBuffer的读取和刷新有很大的效率问题,为了解决这个问题,引入了双缓存区。即双缓冲机制。在这种情况下,GPU会预先渲染好一帧放入FrameBuffer,让视频控制器读取,当下一帧渲染好后,GPU会直接将视频控制器的…
OC-底层原理-36-内存管理(三)AutoReleasePool-&-NSRunLoop-底层分析
自动释放池是OC中的一种内存自动回收机制,它可以将加入AutoreleasePool中的变量release的时机延迟,简单来说,就是当创建一个对象,在正常情况下,变量会在超出其作用域的时立即release。如果将对象加入到了自动释放池中,这个对象并不会立即释放,会等到runlo…
OC-底层原理-34-内存管理(二)强引用分析
假设此时有两个界面A、B,从A push 到B界面,在B界面中有如下定时器代码。当从B pop回到A界面时,
OC-底层原理-33-内存管理(一)TaggedPointer-retain-release-dealloc-retainCount
ARC模式是在WWDC2011和iOS5引入的自动管理机制,即自动引用计数。是编译器的一种特性。其规则与MRC一致,区别在于,ARC模式下不需要手动retain、release、autorelease。编译器会在适当的位置插入release和autorelease。 我们在OC…
OC-底层原理-32-启动优化(三)二进制重排
前提,在之前的两篇文章中,大致介绍了一些基本概念以及启动优化的思路,下面来着重介绍一个pre-main阶段的优化方案,即二进制重排,这个方案最开始是由于抖音的这篇文章抖音研发实践:基于二进制文件重排的解决方案 APP启动速度提升超15%火起来的。 在虚拟内存部分,我们知道,当进…
下一页
个人成就
文章被点赞
203
文章被阅读
67,680
掘力值
1,686
关注了
25
关注者
102
收藏集
2
关注标签
13
加入于
2020-01-21