数据结构之_单链表的实现 基本概念 链式存储定义 为了表示每个数据元素与其直接后继元素之间的逻辑关系,每个元素除了存储本身的信息外,还需要存储指示其直接后继的信息。 单链表 线性表的链式存储结构中,每个节点中只包含一个指针域,这样的链表叫单链表。 通过每个节点的指针域将线性表的数据元素按其逻辑次序链 ...
分类:
其他好文 时间:
2019-07-16 18:07:47
阅读次数:
120
单链表的反转 回顾题目戳这里 https://pintia.cn/problem-sets/15/problems/724 带头节点的反转代码 不带头节点的反转代码 总结 带头节点的思路简单,就是一个头插法构建单链表。 不带头节点的思路我有点迷,现在还没弄明白。 ...
分类:
编程语言 时间:
2019-07-16 10:28:17
阅读次数:
115
哈希模板 开放寻址法 1. 思路:开辟一个2 3倍的空间存储。 2. 冲突处理:找空位进行插入,如果当前位置存在数,继续向后寻找空位,直到有空位进行插入,最后判断是否越界。 拉链法 1. 思路:开辟一个映射空间。 2. 冲突处理:每个空间都挂载一个单链表,和STL的hash_table的实现方法类似 ...
分类:
其他好文 时间:
2019-07-13 21:25:01
阅读次数:
145
using System; using System.Collections.Generic; using System.Reflection.Metadata; using System.Text; namespace 单链表 { public class Node<T> { public T D ...
原文 一、HashMap简介 HashMap是基于哈希表实现的,每一个元素是一个key-value对,其内部通过单链表解决冲突问题,容量不足(超过了阀值)时,同样会自动增长。 HashMap是非线程安全的,只是用于单线程环境下,多线程环境下可以采用concurrent并发包下的concurrentH ...
分类:
其他好文 时间:
2019-07-11 12:32:28
阅读次数:
80
mybatis从入门到精通(二) 增删查改 一丶前言 "增删查改"是后台开发的常用操作, 因此, 学习mybatis或者其他orm框架有必要统一学习一下"增删查改". 二丶准备开发环境 使用"mybatis从入门到精通(一) 入门"准备的开发环境 三丶查 -- <select/> UserMappe ...
分类:
其他好文 时间:
2019-07-10 23:03:29
阅读次数:
136
字典 字典是无序的,不可变数据类型 定义 : 用于存储数据,存储大量数据 字典要比列表快,将数据和数据之间进行关联 定义一个字典 字典中逗号分隔是一个元素 "常鑫" (键) : 10 (值) 键值对应 字典的键 1. 必须是可哈希的—— 不可变的数据类型(列表不可以)——避免哈希冲突,使用了开放寻址 ...
分类:
其他好文 时间:
2019-07-10 16:45:10
阅读次数:
113
线性表: 线性表表示是具有相同特性数据元素的有限序列。 ①相同特性:把同一类事务归类,方便批量处理。 ②有限:表中元素个数为n,n为有限大,n可以为0; ③序列:表中元素排成一列,体现了一对一的逻辑特性(每个元素有则仅有一个前驱和一个后继)。 顺序存储结构: 链式存储结构: ①单链表 带头节点:(H ...
分类:
其他好文 时间:
2019-07-10 15:08:51
阅读次数:
120
package org.demo.linkedList; /** * * 问题可用单链表循环解决 * 问题:N个人围成一圈,从第一个开始报数,第M个将被杀掉,最后剩下一个,其余人都将被杀掉 * */ public class Josefu { public static void main(Stri... ...
分类:
其他好文 时间:
2019-07-10 00:54:41
阅读次数:
147
思路: 时间复杂度为O(N) 第一步 按照顺序复制每一个结点,并且把复制过的结点放在被复制结点的next指针后面: 第二步 复制其中的随机指针 第三步 分开上下两个单链表: 方法二: 空间换时间,哈希表: ...
分类:
其他好文 时间:
2019-07-09 16:45:00
阅读次数:
126