数据结构

  • 逻辑结构和存储结构有什么区别?

    逻辑结构是数据元素之间的关系,存储结构是数据元素及其关系在计算机中的存储方式。例如,小明和小勇是表兄弟,这是他们之间的逻辑关系;他们在教室里面的位置是他们的存储结构。无论他们的座位…

    编程笔记 2021年7月20日
  • Go语言垃圾回收

    Go语言中使用的垃圾回收使用的是标记清扫算法。进行垃圾回收时会 stoptheworld。不过在Go语言 1.3 版本中,实现了精确的垃圾回收和并行的垃圾回收,大大地提高了垃圾回收…

    编程笔记 2021年7月20日
  • Go语言内存管理简述

    内存管理是非常重要的一个话题。关于编程语言是否应该支持垃圾回收就有个搞笑的争论,一派人认为,内存管理太重要了,而手动管理麻烦且容易出错,所以我们应该交给机器去管理。另一派人则认为,…

    编程笔记 2021年7月20日
  • Go语言分布式id生成器

    有时我们需要能够⽣成类似 MySQL 自增 ID 这样不断增大,同时又不会重复的 ID。以支持业务中的⾼并发场景。比较典型的是电商促销时短时间内会有大量的订单涌入到系统,比如每秒 …

    编程笔记 2021年7月20日
  • 机器学习相关术语汇总(附带解析)

    现在每过一段时间都会出现几个新的网络用语,懂的人见了会心一笑,不懂的只能摸摸脑袋,不知道“梗”在哪里,少了许多乐趣。机器学习也有许多独特的用语,在本节,我们…

    编程笔记 2021年7月20日
  • Go语言使用匿名结构体解析JSON数据

    JavaScript 对象表示法(JSON)是一种用于发送和接收结构化信息的标准协议。在类似的协议中,JSON 并不是唯一的一个标准协议。 XML、ASN.1 和 Google 的…

    编程笔记 2021年7月20日
  • Go语言变量逃逸分析

    在讨论变量生命周期之前,先来了解下计算机组成里两个非常重要的概念:堆和栈。变量的生命周期我们将在下一节《变量生命周期》中为大家讲解。 什么是栈 栈(Stack)是一种拥有特殊规则的…

    编程笔记 2021年7月20日
  • Go语言是怎么完成编译的

    Go语言是一门需要编译才能运行的编程语言,也就说代码在运行之前需要通过编译器生成二进制机器码,随后二进制文件才能在目标机器上运行,如果我们想要了解Go语言的实现原理,理解它的编译过…

    编程笔记 2021年7月20日
  • Json数据编码和解码

    数据结构要在网络中传输或保存到文件,就必须对其编码和解码;目前存在很多编码格式:JSON,XML,gob,Google 缓冲协议等等。Go语言支持所有这些编码格式。 结构可能包含二…

    编程笔记 2021年7月20日
  • Go语言解码未知结构的JSON数据

    Go语言内置的 encoding/json 标准库提供了对 JSON 数据进行编解码的功能。在实际开发过程中,有时候我们可能并不知道要解码的 JSON 数据结构是什么样子的,这个时…

    编程笔记 2021年7月20日