java数据结构基础名词解释

2023-11-15

第一章:绪论

  1. 数据与数据结构
    • 数据:信息的载体。
    • 数据元素:数据中的一个“个体”,是数据的基本组织单位。
    • 数据项:
      • 简单数据项(例如:姓名,年龄)
      • 组合数据项(例如:出生年月日,包含年,月,日三个简单数据项)
    • 数据对象:属性相同的数据元素的集合。
    • 数据结构:相互之间存在一种或多种特定关系的数据元素的集合。
  2. 逻辑结构
    • 开始结点:第一个数据元素。
    • 终端结点:最后一个数据元素。
    • 前驱:与当前数据相邻的前面一个元素。
    • 后继:与当前数据元素相邻的后一个元素。
    • 集合:集合众数据元素之间除了“同属一个集合”之后数据元素之间无其他关系,他们之间的关系称为是松散的。
    • 线性结构:有且仅有一个开始结点和终端结点,数据元素之间存在“一对一”的关系,开始结点没有前驱,但只有一个后继,终端结点没有后继,但只有一个前驱,其余结点只有一个前驱,一个后继。
    • 树形结构:数据元素之间存在“一对多”的关系,有一个称为根节点,此结点无前驱结点,其余结点有且仅有一个前驱,所有节点都可以有多个后继。
    • 图形结构:数据元素之间存在“多对多”的关系,任何结点都可以有多个前驱和后继。
  3. 存储结构
    • 顺序存储:将所有数据元素存放在一片连续的存储空间中,并使逻辑上相邻的数据元素在对应的物理位置也相邻。
    • 链式存储:不要求将逻辑上相邻的数据元素存储在物理上相邻的位置,即数据元素可以存储在任意的物理位置上,每个数据元素包含两部分,一部分用来存放数据元素值本身,另一部分用来存放表示逻辑关系的指针。
    • 索引存储:在存储数据元素的同时,还增设了一个索引表,索引表中的每一项包含关键字和地址,关键字是能唯一标识一个数据元素的数据项,地址是指示数据元素的存储地址或存储区域的首地址。
    • 散列存储(哈希存储):将数据元素存储在一片连续的区域内,每一个数据元素的具体存储地址是根据该数据元素的关键字值,通过哈希函数直接计算出来的。
  4. 算法与算法分析
    • 算法的性质:
      1. 有穷性:一个算法都必须在执行有限步骤后结束;
      2. 确定性:一方面指每一条指令都有确切的含义,另一方面指算法输出结果确定;
      3. 有效性:算法中每一条语句都可以被计算机正确执行;
      4. 输入:一个算法具有零个或多个输入;
      5. 输出:一个算法必须有零个或多个输出。这些输出是与输入有着某种特定关系的量,是经过处理后的信息;
    • 设计算法应该考虑的目标:
      1. 正确性:满足具体问题的功能和性能要求;
      2. 可读性:便于阅读,以便后续对算法的理解和修改;
      3. 健壮性:具有检查错误和对某些错误进行适当处理的功能;
      4. 高效率:效率高低是通过算法运行所需资源的多少来反映的,这里的资源包括时间和空间需求;
  5. 算法的描述
    • 自然语言:俗称人话。。。通俗易懂,但是不严谨;
    • 程序设计语言:可以直接运行,但是不直观;
    • 伪代码:介于自然语言和程序设计语言之间,忽略语法要求,容易理解;
  6. 算法分析
    • 时间复杂度:尝试通过计算出依据算法编制的程序中每条语句频度之和的值来估算一个算法的执行时间。语句频度是语句重复执行的次数;
    • 空间复杂度:包括算法本身的代码,常量等占用的资源(固定空间需求)和临时工作单元和递归运算时的资源占用(可变空间需求);
    • 注意:算法编写时if else 的大括号以防万一,不要省略。递归中尽量不要递归的产生变量或对象或是数组什么的;

第二章:线性表

  1. 方法
    • void clear:置空
    • boolean isEmpty:判断是否为空
    • int length:求线性表长度
    • Object get(int i):返回下标为i的对象
    • int get(Object x):返回对象值为 x 的下标
    • void insert(int i,Object x):在第i个数据元素之前插入一个值为x的对象
    • Object remove(int i):删除下标为i的元素,并且返回该元素对象
    • display():顺序输出所有元素
  2. 顺序表相关概念
    • 存储密度 = 数据元素本身之所需的存储空间 / 该数据元素实际所占用的空间
    • 循环链表:也称环形链表,将单链表的首尾相连,构成一个环形结构。再这个链表中,每一个元素都有后继;
    • 双向链表:在单链表中不仅包含指向后继的指针,还包含指向前驱的指针。
  3. 特点
    • 顺序表:因为本质是数组,因此便于随机存取,但不利于插删操作,不容易扩充,只能被动的改变空间大小,访问第i个元素的时间复杂度是O(1)
    • 链表:本质是对.next 的指向来确定链,在空间上较为灵活,便于插删,但不利于查找,访问第i个元素的时间复杂度为O(n)

第三章:栈与队列

  1. 相关概念
    • 栈:类似于一个大坑,先扔进去的东西要后取出来。有顺序栈(以顺序表为本质的栈)和链栈(以链表为核心的栈)
    • 队列:相当于食堂排队买饭,先排队的先买饭。有顺序队列和链队列;
    • 循环队列:在循环链表的基础上建立循环队列
  2. 方法
    • void clear:置空
    • boolean isEmpty:判断是否为空
    • int length:返回长度
    • (栈)Object peek:读取栈顶元素
    • (栈)void push(Object x):将对象x入栈(压倒栈顶)
    • (栈)Object pop:删除并返回栈顶元素,如果栈为空,返回null
    • (队列)Object peek:读取队列首元素
    • (队列)void offer(Object x):将数据元素x加入队列
    • (队列)Object poll:删除队列中的首元素并且返回该对象,若队列为空,返回null
  3. 算法
    • 栈:大数问题,后缀表达式,汉诺塔
    • 队列:素数环,优先队列
  4. 栈与队列的比较
    • 都是线性结构,“一对一”的对应关系
    • 插入操作都限制在表尾进行
    • 都可使用顺序存储和链式存储实现
    • 在增加和方法的时间复杂度上都是常数阶

第四章:串与数组

  1. 相关概念
    • 串:字符串,本质是字符数组
    • 串相等:两个串的长度与对应位置上的字符相同
    • 主串:模式匹配中等待匹配的通常比较长的字符串
    • 模式串:模式匹配中主动匹配的通常比较短的字符串
  2. 方法
    • void clear:置空
    • boolean isEmpty:判断是否为空
    • int length:返回长度
    • char charAt(int index):读取并返回串中的第index个字符
    • String substring(int begin,int end):返回 [begin,end)的子串
    • String insert(int offset,String str):在当前串的第offset个字符前插入str,并且返回一个新的字符串
    • String delete(int begin,int end):删除当前串中[begin,end)的字符串,并且返回新字符串
    • String concat(str):连接两个新的字符串
    • int compareTo(str):将当前串与str比较,若当前串大于str,返回大于0的值,若相等,返回0,若小于,返回小于0的值
  3. 串的模式匹配
    • Brute-Force 模式匹配算法:模式串与主串一个字符一个字符的匹配,不成功,就从主串的下一个字符开始让子串从头开始匹配
    • KMP 模式匹配算法:匹配失败后,不直接从主串的下一个字符开始,而是扫描子串,跳过已经匹配过的正确的串,从主串与子串不匹配的地方开始。
  4. 数组
    • 数组是n(n>=1)个具有相同类型的数据元素构成的有序序列
    • 行优先顺序:在将多维数组存在一维数组中时以行序为主序列的存储方式
    • 列优先顺序:在将多维数组存在一维数组中时以列序为主序列的存储方式
  5. 矩阵的压缩存储
    • 目的:节省存储空间
    • 三角矩阵的压缩存储
    • 稀疏矩阵的压缩存储:
      1. 三元组表存储
      2. 十字链表存储

第五章:树与二叉树

  1. 相关概念
    • 树的结点:由一个数据元素及关联其子树
    • 结点的路径:从根节点到该节点所经历的结点和分支的顺序排列
    • 路径的长度:结点路径中所包含的分支数
    • 结点的度:指该节点拥有的子树的数目
    • 树的度:树中所有结点的度的最大值
    • 叶结点(终端结点):树中度为0的结点,也称终端结点
    • 分支结点(非终端结点):树中度不为0的结点,也称非终端结点
    • 孩子结点(子结点):一个结点的孩子结点指这个结点的子树的根结点
    • 双亲结点(父结点):若树中某个结点有孩子结点,那么这个结点就称为孩子结点的双亲结点
    • 子孙结点:一个节点的子孙结点是指这个结点的所有子树中的任意结点
    • 祖先结点:指该结点的路径中除此结点之外的所有结点
    • 兄弟结点:指具有同一双亲的结点
    • 结点的层次:若规定根结点的层次为0,那么其他结点的层次是其双亲结点的层次数加1;
    • 树的深度:指数中所有结点的层次数的最大值加1
    • 有序树:指树中各结点的所有子树之间从左到右有严格的次序关系,不能互换(如二叉树)
    • 无序树:树中各结点的所有子树之间从左到右没有严格的次序关系
    • 森林:由n(n>=0)棵互不相交的树所构成的集合
  2. 二叉树的延伸概念
    • 满二叉树:所有结点或者是叶结点,或者是左右子树都非空,并且所有叶结点都在同一层上的二叉树称为满二叉树
    • 完全二叉树:相当于满二叉树结点的前n个结点的集合
    • 单分支树:所有结点都没有左子树或是右子树的二叉树
  3. 二叉树的性质
    • 二叉树中第i层上的结点数最多为 2的i次方 个
    • 深度为h的二叉树中最多有 2的h次方-1 个结点(因为深度 = 层数-1,所以其实与上一条本质相同)
    • 若叶结点的个数为 a 个,度为2的结点个数是 b 个,则有 a = b + 1;
    • 对于具有 n 个结点的二叉树,在从左向右的基础上从上到下从0开始编号,那么编号为i的结点有:
      1. i = 0 时为根节点
      2. 2i 为该结点的左子树的根节点(如果有),2i + 1 为该结点的右子树的根节点
      3. 若 2i + 1 >= n ,则该结点无左孩子
      4. 若 2i + 2 >= n ,则该结点无右孩子
  4. 二叉树的存储结构
    • 顺序存储:存在数组中
    • 链式存储:在结点类中有链接左结点和右结点的属性
  5. 二叉树的遍历
    • DLR先根遍历或先序遍历:先查找根节点,在一直查找左子树的左结点,然后翻上来找右结点
    • LDR中根遍历或中序遍历
    • LRD后根遍历或后序遍历:先处理左子树,再处理右子树,最后访问根结点
    • 层次遍历:将二叉数在从左到右的基础上逐层的访问

第六章:图

  1. 相关概念
    • 无向图:全部由无向边构成的图
    • 有向图:全部由有向边构成的图
    • 权:图中的每条边上都有的表示特定意义的值
    • 网:边上标有权的图
    • 完全图:具有n个顶点,n*(n+1)/2 条边的图,即每两个顶点都有连接
    • 稠密图和稀疏图
    • 子图:一个图的边或点的子集所构成的图
    • 邻接点
    • 顶点的度:图中与该顶点相关联边的数目
    • 路径与回路:路径长度是该路径上边的数目
    • 连通图:若任意两个顶点均是连通的,则该图是连通图
    • 连通分量:无向图中的极大连通子图称为连通分量
    • 强连通图和强连通分量:在有向图中,若任意两个顶点均连通,则称为强连通图;有向图中的极大强连通子图称为强连通分量
  2. 图的存储结构
    • 图的类型有四种:无向图(UDG),有向图(DG),无向网(UDN),有向网(DN)
    • 邻接矩阵:
      1. 图:在二维数组中,如果图中两个顶点连接,那么二维数组的对应坐标的位置就是1,其余位置是0
      2. 网:在二维数组中,如果两个顶点链接,那么二维数组中的对应坐标的位置就是他们的权值,其余的位置为无穷大
    • 邻接表:一种链式存储结构
  3. 算法
    • BFS,DFS:广度优先搜索与深度优先搜索
    • 克鲁斯卡尔算法
    • 普里姆算法
    • 最短路径
    • 拓扑排序
    • 关键路径(带权搜索)

第七章:内排序

  1. 相关概念
    • 内部排序:内部排序指待排序列完全存放在内存中进行的排序过程,适合数量不太大的数据
    • 外部排序:外部排序指待排序列借助外部存储器进行的排序,适合数量大的数据
    • 稳定排序与不稳定排序:关键字的前后位置关系在排序前与排序后是否一致,一致则是稳定排序,不一致就是不稳定排序
  2. 内排序方法
    • 插入类:
      1. 直接插入排序:空间复杂度O(1),时间复杂度O(n2)
      2. 希尔排序:空间复杂度O(1),时间复杂度与增量序列的选择有关
    • 交换类:
      1. 冒泡排序:空间复杂度O(1),时间复杂度O(n2)
      2. 快速排序:空间复杂度O(logn),时间复杂度O(nlogn)
    • 选择类:
      1. 直接选择排序:空间复杂度O(1),时间复杂度O(n2)
      2. 树形选择排序:时间复杂度O(nlogn)
      3. 堆排序:空间复杂度O(1),时间复杂度O(nlogn)
    • 归并类:归并排序:空间复杂度O(n),时间复杂度O(nlogn)
    • 基数排序:多关键字排序与链式奇数排序

第八章:外排序

  1. 相关概念
    • 外排序:与外部存储设备的特征有关
  2. 磁盘排序
    • 磁盘信息的存取
    • 多路归并排序
    • 最优归并树

第九章:查找

  1. 相关概念
    • 平均查找长度:ASL
  2. 静态表的查找(线性表,链表等)
    • 顺序查找:从第一个开始查找
    • 二分查找:在有序后,从中间开始,确定区间后再从区间的中部开始找
    • 分块查找(索引顺序查找):通过一个索引,使查找更加方便
  3. 动态表的查找(表本身就是动态生成的)
    • 二叉排序树
    • 平衡二叉树
    • B- 与 B+ 树
    • 红黑树(对称二叉B树)
  4. 哈希表的查找
    • 概念:以关键字的值作为自变量,进行哈希函数的运算后得到一个函数值,将该值作为数据元素的地址进行存储
    • 常用的哈希函数:
      1. 除留余数法:用自变量除一个值后取余,将余数作为函数值
      2. 直接地址法:例如自变量与函数值呈线性关系,可以根据自变量的值直接求出函数值
      3. 数字分析法
      4. 平方取中法
      5. 折叠法:将自变量进行分割,并且进行累加之类的方法,得到函数值
      6. 随机数法
  5. 处理冲突的方法
    • 一旦数据元素较多时,可能会出现两个不同的值有相同的函数值,因此需要处理这种冲突的情况
    • 开放地址法:如果发现冲突,就沿着发生冲突的地方继续寻找空位,遇到空位就填进去
    • 链地址法(拉链法):将所有具有相同哈希地址的不同关键字的数据元素通过链表保存起来
    • 公共溢出区法:另建一个公共溢出区(称为溢出表),如果发生冲突,就存放在这里
    • 再哈希法:发生冲突后就用另一个哈希函数进行运算,重新求得函数值

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java数据结构基础名词解释 的相关文章

  • 使用 objectGUID 进行查询 - Spring LDAP 模板

    我正在尝试获取 存储并依次使用 objectGUID 来查询 Active Directory 为了获取用户属性我正在使用以下 public static class MyDnKeyValueAttMapper implements Att
  • 不同的 JDK 更新会产生不同的 Java 字节码吗?

    假设场景 我有一个项目 其源合规性级别指定为 1 5 现在 我使用两种不同的 JDK 编译此项目 首先使用 JDK 6 Update 7 然后使用 JDK 6 Update 20 这两个不同的 JDK 是否会生成不同的 Java 字节代码
  • Spring Data:限制自定义查询的结果

    在我的 Spring 数据存储库中 我 必须 使用自定义查询 Query注解 我知道我可以限制这样的命名查询中的结果数量 Iterable
  • 如何将列表转换为地图?

    最近我和一位同事讨论了转换的最佳方式是什么List to Map在 Java 中 这样做是否有任何具体的好处 我想知道最佳的转换方法 如果有人可以指导我 我将非常感激 这是个好方法吗 List
  • Java,将 null 分配给对象和仅声明之间有什么区别

    之间有什么区别 Object o null and Object o 仅声明 有人可以回答我吗 这取决于您声明变量的范围 例如 局部变量没有default values在这种情况下你将不得不分配null手动 在这种情况下实例变量分配 nul
  • 警告:跳过条目,因为它不是绝对 URI。 NetBeans 中的 GlassFish

    我成功安装了 GlassFish 但是 当我启动服务器时 我收到两条警告消息 警告 跳过条目 因为它不是绝对 URI 那是关于什么的 Launching GlassFish on Felix platform Aug 09 2014 10
  • Java 9 中可以使用提前编译吗?

    As per JEP 295 http openjdk java net jeps 295 任何 JDK 模块 类或用户代码的 AOT 编译都是实验性的 JDK 9 中不支持 要使用 AOT 化的 java base 模块 用户必须编译该模
  • JPA:如何将字符串持久保存到数据库字段中,输入 MYSQL Text

    需求是用户可以写文章 所以我选择typeText为了contentmysql数据库内的字段 我怎样才能转换Java String into MySQL Text 干得好Jim Tough Entity public class Articl
  • 将多个视频文件合并到一个文件中

    我有多个以相同帧速率和分辨率录制的视频 我想将两个视频合并为一个视频 因此结果文件将是大视频 我正在使用 MP4 解析器 api 并使用下面的代码 Movie countVideo new MovieCreator build Channe
  • 给定一个单词列表 - 在 java 中完成单词的好的算法是什么?权衡:速度/效率/内存占用

    我正在探索潜在的免费 付费应用程序的硬件 软件要求 最终目标是移动 Java 应用程序 该应用程序将从这个简单的目标开始 给定数据库中相关单词的列表 能够对单个字符串输入进行单词补全 换句话说 我已经知道数据库的内容 但算法的内存占用 速度
  • 我们必须将 .class 文件放在 Tomcat 目录中的位置

    我必须把我的 class文件在 Tomcat 目录中 在我的 Java Complete Reference 书中 他们告诉将其放入C Program Files Apache Tomcat 4 0 webapps examples WEB
  • Java 7 中 Object 和 int 的比较

    最近我偶然发现了一个问题 让我停下来思考 对我来说 下面的代码应该总是会触发错误 但是当我的一位同事问我为什么 Eclipse 没有显示错误时 我无法回答任何问题 class A public static void main String
  • java 1.8下无法启动eclipse

    java 1 8 升级后我无法启动 eclipse 附上错误截图 这是我的 eclipse 配置设置 我该如何解决 startup plugins org eclipse equinox launcher 1 3 0 v20120522 1
  • 设置 JAVA_HOME 变量时出现问题

    所以我刚刚下载了 Android Studio 并尝试设置 JAVA HOME 变量以便我可以运行它 我使用的是 Windows 8 并按照我找到的所有说明进行操作 但无济于事 转到高级系统设置 gt 环境变量 然后使用包含我的 jre7
  • 链表中的虚拟节点

    问 什么时候使用它们 作业问题 列表中的第一个和最后一个节点 有时用作列表中的第一个和最后一个节点 从未用作列表中的第一个和最后一个节点 维基百科说 哨兵节点是与链接一起使用的专门指定的节点 列表和树作为遍历路径终止符 哨兵节点的作用是 不
  • Storm Spout 未收到 Ack

    我已经开始使用storm 所以我使用创建简单的拓扑本教程 https github com nathanmarz storm wiki Tutorial 当我运行我的拓扑时LocalCluster一切看起来都很好 我的问题是我没有得到元组的
  • 将变量从 jenkins 传递到 testng.xml

    我想根据从詹金斯传递的变量运行测试用例 例如 选择您要运行的测试用例 测试用例一 测试用例二 在 pom xml maven 中
  • Apache Kafka 是否提供异步订阅回调 API?

    我的项目正在将 Apache Kafka 视为老化的基于 JMS 的消息传递方法的潜在替代品 为了让这个过渡尽可能的顺利 如果替代的排队系统 Kafka 有一个异步订阅机制那就更理想了 类似于我们当前项目使用的JMS机制MessageLis
  • 如何配置嵌入式 MongoDB 以在 Spring Boot 应用程序中进行集成测试?

    我有一个相当简单的 Spring Boot 应用程序 它公开一个小型 REST API 并从 MongoDB 实例检索数据 对 MongoDB 实例的查询通过基于 Spring Data 的存储库 下面的一些关键代码 Main applic
  • Java,如何管理线程读取socket(websocket)?

    我有一个 WebSocket 服务器 我的服务器创建一个新线程来处理新连接 该线程一直处于活动状态 直到 websocket 中断 我的问题 对于 1 000 000 个连接 我需要 1 000 000 个线程 我如何通过一个线程处理多个

随机推荐

  • 奥林巴斯新微单E-M5II曝光:合金机身可防水

    通常单反相机是专业摄影师的最佳工具 但是对于普通消费者来说 既要拥有专业的图像质量 又不想负担单反相机沉重的质量 就成为了基本的要求 因此 微单相机就在这种情况下应运而生 如果你还没决定好选择哪一款微单 那么奥林巴斯即将推出的这款OM D
  • Android APP性能及专项测试

    Android篇 1 性能测试 Android性能测试分为两类 1 一类为rom版本 系统 的性能测试 2 一类为应用app的性能测试 Android的app性能测试包括的测试项比如 1 资源消耗 2 内存泄露 3 电量功耗 4 耗时 5
  • 【C++ 进阶】继承

    一 继承的定义格式 基类又叫父类 派生类又叫子类 二 继承方式 继承方式分为三种 1 public继承 2 protected继承 3 private继承 基类成员与继承方式的关系共有9种 见下表 虽然说是有9种 但其实最常用的还是红框里的
  • 随心所欲Do whatever you want——Minecraft

    Minecraft是一款沙盒类电子游戏 开创者是马库斯 阿列克谢 泊松 由微软旗下Mojang Studios维护 从2017年开始 中国版 我的世界 由网易游戏代理 目标 Minecraft着重于让玩家去探索 交互 并且改变一个由一立方米
  • Github使用学习笔记(二)

    第二节任务 如何把我在本地上的工程上传到github上已经建好的仓库中 一 在本地目录下创建我的版本库 mkdir learngit cd learngit git init ls ah 首先创建一个空目录 目录名为learngit 之后进
  • 【华为OD】

    目录 一 题目描述 二 输入描述 三 输出描述 备注 用例 四 题目解析 五 Java玩法 六 JavaScript玩法 一 题目描述 一个图像有 n 个像素点 存储在一个长度为 n 的数组 img 里 每个像素点的取值范围 0 255 的
  • 网站流量统计

    常使用web服务器的朋友大都了解 一般的web server有两部分日志 一是运行中的日志 它主要记录运行的一些信息 尤其是一些异常错误日志信息 二是访问日志信息 它记录的访问的时间 IP 访问的资料等相关信息 现在我来和大家介绍一下利用t
  • 高级定时器 tim1 tim8 一般中断配置,以防以后忘记

    void Timer8 Init void TIM TimeBaseInitTypeDef TIM TimeBaseStructure NVIC InitTypeDef NVIC InitStructure RCC APB2PeriphCl
  • C++设计模式——单例模式 (一)

    单例模式 一个类只能创建一个对象 单例模式是C 中常用的一种设计模式 熟悉Qt的朋友肯定清楚QApplication实际也是采用的单例模式 并且为用户提供了一个全局的指针对象 qApp 我们先看看Qt中对于单例的实现 define qApp
  • Android NDK是什么

    官方给出的答案 Android NDK 是一套允许您使用原生代码语言 例如 C 和 C 实现部分应用的工具集 在开发某些类型应用时 这有助于您重复使用以这些语言编写的代码库 深入的学习 https developer android goo
  • 13 款炫酷的 MySQL 可视化管理工具!好用到爆!!

    MySQL 的管理维护工具非常多 除了系统自带的命令行管理工具之外 还有许多其他的图形化管理工具 工具好用是一方面 个人的使用习惯也很重要 这里介绍 13 款 MySQL 图形化管理工具 供大家参考 1 DBeaver DBeaver 是一
  • 分数运算(类+构造)

    题目描述 用C 定义和实现一个分数类 并根据要求完成分数对象的运用 分数类包含分子和分母两个属性 操作包括 各属性的get方法 构造函数 初始化分子分母 相加运算 该运算接收两个分数对象的分子和分母 然后进行分数相加 结果保存在自己的分子和
  • 利用 ViewBinding 和反射封装的基类,从此再也不用 findViewById 了

    code小生 一个专注大前端领域的技术平台公众号回复Android加入安卓技术群 作者 段颖超丨乐拼链接 https www jianshu com p ea395a83c666声明 本文已获段颖超丨乐拼授权发表 转发等请联系原作者授权 今
  • 计算机图形学入门(一)-线性代数部分知识1

    本部分主要介绍了向量的点乘与叉乘在图形学中的基本应用 介绍了图形学中常用的2D矩阵变换 例如缩放 对称 切变换 旋转 平移 逆变换 组合变换和分解变换 还有在图形学中为了简化操作而采取的添加维度的方法 主要的学习过程来自下面的视频 本文只会
  • select case when语句

    今天看见一公司的数据库面试题 其中有道一开始没想起怎么做 后来摸索了下终于做出来了 题目是 两个表联合查询 当表2的记录在表A里没有时 将其设置为0 mysql gt select from t1 id name 1 bbs 2 bb 3
  • folly库安装(2)openssl升级、python3.8安装

    openssl是必须要升级到openssl1 1 1的 python3 8可以选择不安装 因为folly官网提供了一种用python3快速安装的方法 但这个方法在国内不太顺利 被墙的原因 很多包是不能自动下载的 但了解下也是好的 用pyth
  • 面试官:生成订单30分钟未支付,则自动取消,该怎么实现?

    了解需求 方案 1 数据库轮询 方案 2 JDK 的延迟队列 方案 3 时间轮算法 方案 4 redis 缓存 方案 5 使用消息队列 了解需求 在开发中 往往会遇到一些关于延时任务的需求 例如 生成订单 30 分钟未支付 则自动取消 生成
  • Centos下服务异常停止,log无任何异常体现localhost kernel: TCP: request_sock_TCP: Possible SYN flooding on port 8080

    背景 这两天项目出了奇怪的问题 某服务不明原因的停止运行 停止前一切正常 解决 重启服务解决 但不多久又出现类型问题 分析 开发和运维给不出原因 无法向客户交待 头大时刻想到系统运行日志 var log message应该有记录相应log
  • MySQL必知必会 学习笔记 第二十二章 使用视图

    MySQL 5添加了对视图的支持 视图是虚拟的表 它包含的是一个查询的结果 它本身不含数据 只是用来查看存储在别处的数据的一种设施 视图返回的数据是从其他表中检索出来的 在添加或更改这些表中的数据时 视图将返回改变过的数据 视图的应用 1
  • java数据结构基础名词解释

    第一章 绪论 数据与数据结构 数据 信息的载体 数据元素 数据中的一个 个体 是数据的基本组织单位 数据项 简单数据项 例如 姓名 年龄 组合数据项 例如 出生年月日 包含年 月 日三个简单数据项 数据对象 属性相同的数据元素的集合 数据结