- 博客(18)
- 资源 (3)
- 收藏
- 关注
原创 【Bug fix】windows 安装 docker desktop 无法正常启动
windows docker desktop无法正常启动wsl无法连接server
2022-12-14 19:18:04
742
原创 gprof & line-by-line profiling
gprof介绍gprof是GNU profile工具,可以运行于linux、AIX、Sun等操作系统进行C、C++、Pascal、Fortran程序的性能分析,用于程序的性能优化以及程序瓶颈问题的查找和解决。通过分析应用程序运行时产生的“flat profile”,可以得到每个函数的调用次数,每个函数消耗的处理器时间,也可以得到函数的“调用关系图”,包括函数调用的层次关系,每个函数调用花费了多少时间。使用步骤(1)1) 用gcc、g++、xlC编译程序时,使用-pg参数,如:g++ -pg -o te
2021-11-25 22:31:51
478
原创 Math.ceil() & Math.floor()
ans >= Math.log(a) / Math.log(b);ans为整数,求ans右侧强转int是错误的。(2.0 -> 2, 2.6 -> 3, 3.0 -> 3)方法已提供,使用 Math.ceil(),向上取整。所以求 >= double类型 的整数时,使用Math.ceil(),记得该函数返回类型也为double。对应的ans <= Math.log(a) / Math.log(b);ans为正数,求ans的话,其实是对右侧向下取...
2021-11-25 03:19:36
259
原创 05 - 位图
位图Step 1位图的功能位图是拿每一个比特位来做图。位图的功能就是可以确定一个集合,如果给出数值的范围是确定的(给出确定的最大值),可以使用位图来记录是否存在的功能。位图的好处极大的压缩空间。比如 0 - 1023,存储数字是否存在(1024b / 32b) = 32从而可以通过存储 32位整型数组,来记录1024个状态。位图的实现见后面代码。PS: 位运算的速度比算数运算速度快得多 (10倍以上)位运算实现加减乘除加法异或运算就是无进位相加。进位信息 运算为 (a
2021-11-15 23:14:44
649
原创 04 -链表相关知识
关于链表大多数链表都是检验coding能力的,通过熟练度不断提升。在面试中一二面会进行考察,基本必须AC,是很基础的考察项。关于nullJVM虚拟机里面规定了一个地址为null,然后链表最后一个元素中其实也是存了一个地址,只不过该地址指向null所在的内存空间。所以最后一个元素指向null。(可以理解为启动前约定好,某一个地址就叫null)单链表的反转及双链表的反转链表的遍历首先获得头指针,循环Node cur = head;while (cur != null){ // 中间处理流程
2021-11-13 11:21:03
747
原创 03-02:时间复杂度,ArrayList,HashMap,TreeMap简单介绍
时间复杂度时间复杂度 是程序做了多少常数时间操作的指标。估算时间复杂度,要用最差情况去估计时间复杂度。动态数组什么是 动态数组?—> ArrayList动态数组的扩容和使用。查询 —> 寻址 O(1)扩容行为会影响ArrayList行为吗?扩容行为从时间复杂度的角度来说,对ArrayList整体性能,没有影响。ArrayList动态数组扩容时间复杂度为 O(1);ArrayList比固定数组,多常数级别的操作,但是在时间复杂度上,没有影响。也就是说,由于扩容行为所以会比固定
2021-11-12 21:50:19
1156
原创 primary 03-01: 二分法及进阶问题
二分法基本二分法 (加入对数器验证)import java.util.Arrays;public class BinarySearch { public static boolean binarySearch(int[] arr, int target) { if (arr == null || arr.length == 0) { return false; } int L = 0; int R =
2021-11-12 00:53:35
465
原创 primary 02: 前缀和,对数器与随机函数
数据结构分为物理结构与逻辑结构:逻辑结构: 有序表,链表,二叉树等物理结构: 紧密结构(连续结构),跳转结构ps: 所有的逻辑结构都是基于物理结构所形成的(单一或组合。)基本数据结构:数组:便于寻址,不便于增加和删除链表:便于增加和删除,不便于寻址稍微特殊一点的是,当数组很大时,可能会出现少量的跳转结构。 比如一亿长度的数组,1000万紧密存放在一起,然后尾指针指向下一个块的地址。前缀和解法 --> 针对范围和问题给定一个数组,任意给出左右边界的值,,求以O(1)的时间..
2021-11-10 23:06:24
490
原创 hard link& soft link
参考:https://www.jianshu.com/p/dde6a01c4094软链接存的是相对路径名或者准确说是ln -s命令时指定的路径(文章不对)-结果是在ubuntu上验证的。 由于指向另一个inode number,所以额外存储在另一个磁盘块上。cp命令时,会将文本复制 而不是复制符号链接文件-大小会发生改变mv命令时,直接移动软链接文件 - 但是移到别的文件夹时,由于存储的是相对路径,位置错误就会报错。当然,对应相对路径创建文件时,软连接又会变绿可访问说白了,就是存的pathname
2021-10-03 05:37:40
328
原创 django 下 对decimal TYPE进行redis的读取
TypeError: Object of type Decimal is not JSON serializabledecimal不是internal type, 无法正常序列化添加函数import jsonimport decimalclass Encoder(json.JSONEncoder): def default(self, obj): if isinstance(obj, decimal.Decimal): return float(obj)json.du
2021-07-10 05:58:37
353
原创 Docker 避免 ubuntu下 sudo
1、sudo groupadd docker # Docker添加当前用户组2、sudo gpasswd -a [username] docker #关键!将当前用户加入到docker组3、重启docker服务:service docker restartstep 3 无效的话, 输入 newgrp dockersudo systemctl enable docker # 开机自启动sudo systemctl start docker # 开启docker...
2021-07-05 21:29:26
133
原创 go语言 for陷阱
在go语言中 注意for循环陷阱目前的理解是在for循环中 包括 for range是独立的作用域,内部声明的变量会在for循环结束后释放内存,既消失掉for作用域内所有声明的变量可以看作是一个调用函数体内的声明变量,也就是说,for作用域内可以声明与for循环外部已经声明变量相同名字的变量,并且在for循环内,以该变量为默认值。当退出for循环后,再次调用该变量时就会调用原本声明的,即for作用域外的变量。经实验,内存地址是问题的关键。作用域内变量共享同一内存地址,结束后全部释放。 出现与作
2021-04-07 03:18:49
297
双线程JAVA小程序
2018-09-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人