数据结构中的基本结构分析

数据结构

  • 一般将数据结构分为两大类:线性结构 和 非线性结构 。

    线性数据结构有 线性表、栈、队列、串、数组和文件;非线性数据结构有 树和图。

线性表

  • * 线性表的数据结构是 n 个数据元素的有限序列:
    
      $\left( {{{\rm{a}}_1},{a_2} \cdots {a_n}} \right)$
    * n 为线性表的长度($n \ge 0$), `n=0` 的表称为空表。
    
  • 数据元素呈线性关系。必存在唯一的一个称为 “第一个” 的数据元素;必须在唯一的一个称为 “最后一个” 的元素;除第一个元素外,每个元素都有唯一的一个先驱元素,除最后一个元素外,每个元素都有且只有一个后继元素。

  • 所有数据元素在同一个线性表中必须是相同的数据类型。

  • 线性表按照其存储结构可以分为 顺序表 和 链表 。

    用顺序存储结构存储的线性表称为 顺序表 。

    用链式存储结构存储的线性表称为 链表 。

  • 将线性表中的数据元素依次存储在某个区域中,所形成的表称为 顺序表 。一维数组就是用顺序方式存储的线性表。


Terwer...大约 2 分钟后端开发JavaSE线性表元素结构存储称为数据数据结构datadata-structurestructure
Java_SE_第八讲:理解面向对象程序设计
  1. break 语句:经常用在循环语句中,用于跳出整个循环,执行循环后面的代码。

  2. continue 语句:经常用在循环语句中,用于跳出当前的这个循环(或者是跳出本次循环), 开始下一次循环的执行。

  3. break 与 continue 可以搭配标签使用,在实际开发中,根本没有人会将 break 与 continue 搭配标签来使用。

  4. 面向对象程序设计(Object Oriented Programming,OOP;Object Oriented Design, OOD)。

    什么是面向对象?

    在面向对象程序设计中有两个重要的概念:类(class)与对象(object)。

  5. 类:类是一种抽象的概念,类中包含了数据(通常使用名词来表示)与对数据的操纵(通 常使用动词来表示)。

    比如说人就是一种抽象的概念,人具有姓名、年龄、身高等数据, 还有吃饭、跑步等操纵数据的动作。

  6. 对象:对象是一种具体的概念,是类的一种具体表示方式。比如说人是一个类,而张三、 李四、王五等具体的人就是对象。

  7. 类所包含的内容,类一共包含两部分内容:

  8. a) 数据,数据在类中称作属性(Property 或者 Attribute)或者叫成员变量(Member variable)。

  9. b) 对数据的操纵,这种操纵在类中称作方法(method)。


Terwer...大约 2 分钟后端开发JavaSE循环数据语句使用概念oop面向对象object
MyBatis缓存的概念

缓存回顾

缓存就是内存中的数据,常常来自对数据库查询结果的保存。

使用缓存可以避免频繁与数据库交互,进而提高响应速度。

MyBatis 对缓存的支持

MyBatis 也提供了对缓存的支持,分为 一级缓存二级缓存。可以用下面的图来理解:

  1. 一级缓存是 SqlSession 级别的缓存。在操作数据库时,需要构造 SqlSession 对象,在对象中有一个 HashMap 的数据结构用于存储缓存数据。不同的 SqlSession 之间缓存的数据区域(HashMap)是不同的。
  2. 二级缓存是 Mapper 级别的缓存。多个 SqlSession 操作同一个 Mapper 的 sql 语句,多个 SqlSession 可以共用二级缓存,二级缓存是跨 SqlSession 的。

Terwer...大约 1 分钟MyBatis后端开发开源框架缓存二级缓存数据库数据mybatis一级缓存
vue3的reactive和ref的区别

vue3的reactive和ref的区别

首先我们都知道 ref 函数和 reactive 函数都是用来定义响应式数据;

但是 reactive 更适合定义复杂的数据类型(json/arr)、ref 适合定义基本数据类型(可接收基本数据类型和对象)

一句话:

使用场景,ref 简单数据,reactive 复杂数据,ref 取数据需要加 value

参考

https://juejin.cn/post/7013326406444646407


Terwer...小于 1 分钟前端开发数据定义数据类型函数适合