- 博客(6)
- 收藏
- 关注
原创 go语言垃圾回收
go语言的gc 常见的几种gc 引用计数法 reference clouting 标记删除法 mark and sweep 复制收集 copy and collection go语言使用的gc V1.1 标记删除法 v 1.3 stw mark sweep并行 ??? v1.5 版本 三色标记删除法 v1.8 版本加入写屏障 标记删除法 标记删除法流程 从根几点进行出发,依次进行扫描根节点进行扫描,程序不能到的地方进行标记,然后清扫删除 缺点 stw 程序出现卡顿 三色标记
2020-10-14 23:43:12 385
原创 【数据结构】【数组与字符串】双指针的应用总结
导语:在刷完leetcode的数组与字符串的卡之后,发现数组和字符串的一些使用双指针算法有规则和套路;在leetcode上有对双指针使用的一些介绍,但是比较简单和只有两种;但是我刷的时候发现有三种,本文就说说自己总结的三种,以及在那些场景下想到使用该方法去解题。 双指针技巧一:一个从开始,一个从结尾,两指针相遇 直接上这种模式代码的模板;(go语言版本) start :=0 end := len(arr)-1 for end > start { // 相关的操作 start++ end-.
2020-08-04 22:51:05 236
原创 【数据结构】【数组与字符串】数组和字符串的常用操作以及常用技巧
go语言中字符串的常用操作 go语言中数组的常用 一些操作 在算法中一些常见能事半功倍的 技巧 字符串的常用操作 字符串转化为 字符数组 arrStrBytes := []byte(str) 字符数组转化为字符串 str :=string(arrStrBytes) 字符串截取 字符串截取和数组的截取是一样的 arrByte[low:high] low表示起点,是包含这个字符的 hight 表示终点,是不包含这个字符的 字符串切割转化为数组 []string =strings.spl..
2020-08-03 21:40:25 283
原创 【数据结构】【二叉树】二叉树的层序遍历解题报告
题目:二叉树的层序遍历 解题思路 根据先序/中序/后序的遍历经验我们知道非递归遍历一般都是入队,出对的操作 .根据上图的遍历结果123456,应首先将1入队;然后再将2和3入队;怎么将2和3入队呢?那就先将1从队中弹出来,将1->left和1->right入队 其次是3和4要入队,则我们需要将2从对中弹出来,然后2->left 2->right 将其入队;则这个时候看出来这个是一个先进先出的队列结构 这个是思路很清楚了,代码就很简单了,首先将根节点入队;然后循环判断队列不为空为止
2020-07-19 10:44:41 170
原创 【数据结构】【二叉树】先序中序后序遍历解题报告
leetcode的题目: 给定一个二叉树,给出二叉树的先序、中序、后序的遍历结构 解题思路: 1.第一个知识点二叉树的先序遍历、中序遍历、后序遍历 先序遍历结构:根 --> 左 -> 右 遍历结果:1->2->3 中序遍历结构:左–> 根–> 右 遍历结果:1->3->2 后序遍历结构:左–>右–>根 遍历结果:3->2->1 2. 第一种解法:递归的解法;递归的解法三种遍历相差不大,因此就写一个先序遍历;递归比较简单直
2020-07-18 10:07:59 1289
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人