- 博客(16)
- 收藏
- 关注
原创 MediaPlayer+SurfaceView实现本地视频播放功能
借鉴了网上的代码,自己调式跑通,期间遇到一些问题,借此记录一下。MainActivity.javapackage com.example.samplevideoplayer;import androidx.appcompat.app.AppCompatActivity;import androidx.core.app.ActivityCompat;import android....
2019-08-09 09:07:48
910
转载 快速排序
#include <stdio.h>// 分类 ------------ 内部比较排序// 数据结构 --------- 数组// 最差时间复杂度 ---- 每次选取的基准都是最大(或最小)的元素,导致每次只划分出了一个分区,需要进行n-1次划分才能结束递归,时间复杂度为O(n^2)// 最优时间复杂度 ---- 每次选取的基准都是中位数,这样每次都均匀的划分出两个分区,只需要logn...
2018-06-20 20:47:22
208
转载 堆排序
#include <stdio.h>// 分类 -------------- 内部比较排序// 数据结构 ---------- 数组// 最差时间复杂度 ---- O(nlogn)// 最优时间复杂度 ---- O(nlogn)// 平均时间复杂度 ---- O(nlogn)// 所需辅助空间 ------ O(1)// 稳定性 ------------ 不稳定void Swap(in...
2018-06-20 19:52:44
195
转载 归并排序算法
#include <stdio.h>#include <limits.h>// 分类 -------------- 内部比较排序// 数据结构 ---------- 数组// 最差时间复杂度 ---- O(nlogn)// 最优时间复杂度 ---- O(nlogn)// 平均时间复杂度 ---- O(nlogn)// 所需辅助空间 ------ O(n)// 稳定性 ---...
2018-06-20 17:00:51
284
转载 HashMap的原理
散列法(hashing)或哈希法是一种将字符组成的字符串转换为固定长度(一般是更短长度)的数值或索引值的方法。HashMap是基于哈希表的Map接口的非同步实现。此实现提供所有可选的映射操作,并允许使用null值和null键。HashMap存储的是键值对,HashMap很快。该类不保证映射的顺序,特别是它不保证该顺序恒久不变。HashMap实质上是一个“链表散列”的数据结构,即数组和链表的结合体。...
2018-06-19 21:09:54
265
原创 String、StringBuffer、StringBuilder
线程安全:StringBuffer、StringBuilder类拥有的成员属性以及成员方法基本相同,区别是StringBuffer类的成员方法前面多了一个关键字:synchronized(同步)。这个关键字是在多线程访问时起到安全保护作用,也就是说StringBuffer是线程安全的。String类也是线程安全的。执行效率:StringBuilder>StringBuffer>Stri...
2018-06-19 12:09:44
253
转载 基本数据类型和引用数据类型
基本数据类型:byte、int、short、long、char、float、double、boolean引用数据类型:类、接口类型、数组类型、枚举类型、注解类型区别:基本数据类型:在被创建的时,在栈上给其划分一块内存,将数值直接存储在栈上引用数据类型:在被创建时,首先要在栈上给其引用(句柄)分配一块内存,而对象的具体信息存储在堆内存上,然后由栈上面的引用指向堆中对象的地址。例如,有一个类Perso...
2018-06-19 10:28:24
242
原创 sleep、wait、yield
sleep()方法,是属于Thread类中的。而wait()方法是属于Object类中的。sleep()方法导致了程序暂停执行指定的时间,让出CPU给其他线程,但是他的监控状态依然保持着,当指定的时间到了又会自动恢复运行状态。在调用sleep()方法的过程中,线程不会释放对象锁。执行sleep后线程进入阻塞状态。而当调用wait()方法的时候,线程会放弃对象锁,进入等待此对象的等待锁定池,只有针对...
2018-06-11 20:10:33
353
原创 ==和equals区别
1、对于基本数据类型,“==”比较的是两者的值是否相等2、对于引用类型,“==”比较的是引用地址是否相同(即是否是同一辆汽车,注意:只有一辆汽车)3、(1)Object中的equals()方法和“==”功能一样public boolean equals(Object obj)指的是其他某个对象是否与此对象相等。返回true值的equals需要满足:对于任何非空引用值x,y,z自反性:x.equal...
2018-06-11 18:39:47
508
原创 Java序列化
serialization(序列化)是一种将对象以一连串的字节描述的过程;deserialization(反序列化)是一种将这些字节重建成一个对象的过程。Java序列化API提供一种处理对象序列化的标准机制。JAVA序列化机制解决的问题:在分布式环境中经常需要将对象从这一端网络或设备传递到另一端。这需要一种可以在两端传输数据的协议。实现Serializable接口后就能够将一个对象序列化,Seri...
2018-06-11 16:15:35
215
原创 Python使用问题总结
1、包的导入问题安装了anaconda包管理器,所以在pycharm中使用anaconda里自带的库。pycharm中File->settins->project把interpreter改为anaconda里的python.exe,就可以将anaconda里的各种包导入pycharm中了。...
2018-05-30 19:32:55
283
原创 分布式系统
http://www.scs.stanford.edu/17au-cs244b/labs/program.htmlhttp://www.scs.stanford.edu/17au-cs244b/notes/1、计算(服务)zookeeper2、存储 key-value dynamic3、备份4、一致性:paxos/raft/bft/pbft5、P2P6、阵列Cluster7、内存数据库(分布)8、...
2018-05-26 20:18:24
200
原创 python安装
第一步:先安装Anaconda,这是一个包管理器和环境管理器。 大都在CMD中操作anaconda 指定镜像源,解决conda下载速度慢失败问题:https://www.cnblogs.com/dreamfly2016/p/6427807.html(知乎)初学python者自学anaconda的正确姿势是:https://www.zhihu.com/question/580337...
2018-05-26 20:11:15
290
原创 操作系统复习记录(一)
1、操作系统分为硬件和软件两个部分:硬件:CPU中央处理器(运算单元:执行机器指令运算,控制单元:解译机器指令)、主存储器、I/O控制系统、外围设备(输出设备:显示器等,输入设备:鼠标键盘等,存储设备,网络通讯设备)、总线bus(包括一组控制线,一组数据线,一组地址线)中央处理器(CPU)主要包括:运算逻辑部件:一个或多个运算器寄存器部件:包括通用寄存器、控制与状态寄存器,以及高速缓冲存储器控制部...
2018-05-11 20:17:39
656
原创 操作系统复习记录(二)
各种基础概念:1、多道程序设计技术:是在计算机内存中同时存放几道相互独立的程序,使它们在管理程序控制之下,相互穿插的运行。 两个或两个以上程序在计算机系统中同处于开始到结束之间的状态。多道程序技术运行的特征:多道、宏观上并行、微观上串行。多道程序设计允许多个程序同时进入一个计算机系统的主存储器并启动进行计算的方法。从宏观上看是并行,多道程序都处于运行中,并且都没有运行结束;从微观上看是串行,各道程...
2018-05-09 12:11:47
1820
原创 Sublime Text3---自学记录(一)
打算以后从事前端开发工作,现在开始自学前端技术,软件使用sublime text3,记录下学习过程方便以后复习巩固。sublime text3 安装很简单,装插件真是太麻烦了,搞得头都大了。先安装Package Control,到官网https://packagecontrol.io/installation复制左边Sublime Text3下的代码到控制台,打开控制台有两个方法:(1)快捷键“c...
2018-05-08 20:11:47
558
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人