随笔分类 - 数据结构
摘要:使用数组实现环形队列 package com.codezs.datastruct.queue; public class CircleQueue { private String[] items; private int size = 0; //指向队列头部 private int head = 0
阅读全文
摘要:判断链表是否为环形 思路: 定义两个指针fast、slow, 一次循环中让fast走两步,slow走一步。 看两者有无相遇的机会(判断两个指针是否为同一节点),相等则为同一个节点-->链表为环形 判断链表是否为环形的实现 package com.codezs.datastruct.mylinkedl
阅读全文
摘要:单链表反转 思路: 单链表反转:就是把每个节点的指针域由原来的指向下一个节点变为指向其前一个节点。 思路: 1.因为单链表没有指向前一个节点的指针域,所以这里需要创建一个指向前一个节点的指针pre,用于存储每一个节点的前一个节点。 2.需要定义一个保存当前节点的指针cur,以及下一个节点的next。
阅读全文
摘要:使用单链表实现LRU(Least Recently Used)淘汰缓存机制 需求:存在一个单链表,在单链表尾部的都是越早之前添加的元素。 当元素被访问到时,会添加进缓存(也就是这个单链表中)。 如果这个元素在之前已经被缓存到了链表中,则将这个元素从原来的位置删除,用头插法放到链表的头部。 如果这个元
阅读全文
摘要:重学数据结构(二) 对线性表的顺序表进行实现 public abstract class MyList<T>{ //定义顺序表的初始容量 final int maxSize = 10; //对数据元素进行存储 private T[] list; //顺序表中元素的个数 private int len
阅读全文
摘要:重学数据结构(一) 数据结构的基本概念 1.数据结构 数据结构是指互相直线存在着一种或者多种关系的数据元素的集合。 2.逻辑结构 逻辑结构是指数据之间的相互关系,通常分为四种结构: 集合:结构中的数据元素都是同一种类型。 线性结构:结构中的数据元素之间存在一对一的关系。 树形结构:结构中的数据元素之
阅读全文

浙公网安备 33010602011771号