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