数据结构
文章平均质量分 92
liumce
有趣的程序媛!
展开
-
2021年面试问题记录
Redis1.什么是缓存穿透?什么是缓存雪崩?如何避免?答:缓存穿透: 一般的缓存系统,都是按照key去缓存查询,如果不存在对应的value,就应该去后端系统查找(比如DB)。一些恶意的请求会故意查询不存在的key,请求量很大,就会对后端系统造成很大的压力。这就叫做缓存穿透。避免方法: 1.对查询结果为空的情况也进行缓存,缓存时间设置短一点,或者该key对应的数据insert了之后清理缓存。 2.对一定不存在的key进行过滤。可以把所有...原创 2021-02-19 17:36:21 · 167 阅读 · 0 评论 -
Mysql索引类型及索引相关操作
一、索引定义MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度。打个比方,如果合理的设计且使用索引的MySQL是一辆兰博基尼的话,那么没有设计和使用索引的MySQL就是一个人力三轮车。索引分单列索引和组合索引。单列索引,即一个索引只包含单个列,一个表可以有多个单列索引,但这不是组合索引。组合索引,即一个索引包含多个列。创建索引时,你需要确保该索引是应用在 SQL 查询语句的条件(一般作为 WHERE 子句的条件)。实际上,索引也是一张表,该表保存转载 2021-02-19 16:59:24 · 178 阅读 · 0 评论 -
Java实现动态规划实现0-1背包问题以及C++实现动态规划实现多段图
动态规划算法思想:把待求解问题分解成若干个子问题,先求解子问题, 然后由这些子问题的解得到原问题的解,但动态规划求解过的子问题的结果会 被保留下来,不像递归那样每个子问题的求解都要从头开始返回求解。动态规 划求解问题的关键在于获得各个阶段子问题的递推关系式:(1)分析原问题的最优解性质,刻画其结构特征(2)递归定义最优值(3)自底向上(由后向前)的方式计算最优值(4)根据计算最优值时得到的信息,构造一个最优解。一、动态规划实现0-1背包问题public class...原创 2020-06-24 11:35:28 · 467 阅读 · 0 评论 -
顺序表的基本操作
#define OVERFLOW -1#define OK 1#define ERROR 0#define MAXSIZE 6 //空间初始分配量,为了检验空间扩展,初值取小一点#define INCREMENT 10 //空间分配增量#include<stdio.h>#include<stdlib.h>#include<malloc.h>typedef int Status;typedef int ElemType;typedef str.原创 2020-06-08 15:25:29 · 1906 阅读 · 1 评论 -
单链表的基本操作
(1) 用表头插入法创建单链表;(2) 用表尾插入法创建单链表;(3) 在单链表的第i个结点前插入一个结点;(4) 删除单链表中第i个结点;(5) 删除单链表中指定值的结点;(6) 删除单链表中结点值等于e的所有结点;(7) 输出链表元素;(8) 清空单链表。#define OVERFLOW -1#define OK 1#define ERROR 0#define TRUE 1#define FLASE 0#include<stdio.h>...原创 2020-06-09 12:05:24 · 4364 阅读 · 0 评论 -
C#实现二叉树最大深度
}原创 2019-12-14 14:35:00 · 494 阅读 · 0 评论 -
C#实现堆、选择排序
原创 2019-12-14 14:33:02 · 109 阅读 · 0 评论 -
C#实现二叉树结点整理
原创 2019-12-14 14:31:23 · 169 阅读 · 0 评论 -
数组、链表实现队列
package task2;/** * 功能:数组、链表实现队列 * Created by liumao 2019/8/7 0007 **/public class Queue<T> { public class ArrayQueue { private Object[] arrQueue; private int front;...原创 2019-12-14 14:25:06 · 158 阅读 · 0 评论 -
Java编程用链表实现链式栈
package task2;/** * 功能:用链表实现链式栈 * Created by liumao 2019/8/7 0007 **/public class LinkedStack<T> { Node<T> top = null; public boolean isEmpty(){ return top == null;...原创 2019-12-14 14:24:26 · 137 阅读 · 0 评论 -
Java实现循环队列
package task2;/** * 功能:循环队列 * Created by liumao 2019/8/7 0007 **/public class CircularQueue { private int[] items; private int size; private int head; private int tail; pu...原创 2019-12-14 14:23:47 · 125 阅读 · 0 评论 -
用数组实现顺序栈
package task2;/** * 功能:用数组实现顺序栈 * Created by liumao 2019/8/7 0007 **/public class ArrayStack { private String[] items; private int count; private int size; public ArrayStack(in...原创 2019-12-14 14:23:00 · 912 阅读 · 0 评论 -
Java实现单链表增删操作
package task1;/** * 功能:单链表增删操作 * Created by liumao 2019/8/4 **/public class SingleLinkedList { // 定义链表结点 class Node{ // 数据域 int data; // 指针域 Node next;...原创 2019-12-14 14:22:27 · 183 阅读 · 0 评论 -
Java实现实现单链表反转及求中间结点
package task1;/** * 功能:实现单链表反转 * Created by liumao 2019/8/5 **/public class ReverseLinkedList { static class Node{ private int data; private Node next; public Node(...原创 2019-12-14 14:21:47 · 144 阅读 · 0 评论 -
Java实现动态扩容及合并两个有序数组
package task1;/** * 功能:实现动态扩容 * 数组数据类型:int * Created by liumao 2019/8/4 **/public class DynamicDilatationArray { //定义一个大小为20容量的静态数组 static int[] array = new int[20]; public static...原创 2019-12-14 14:20:42 · 189 阅读 · 0 评论 -
双向链表实现增删操作
package task1;/** * 功能:双向链表实现增删操作 * Created by liumao 2019/8/4 **/public class DoubleLinkList<T> { private Link<T> prior; private Link<T> next; class Link<T>...原创 2019-12-14 14:19:10 · 173 阅读 · 0 评论 -
实现一个大小固定的有序数组,支持动态增删改操作
package task1;/** * 功能:实现一个大小固定的有序数组,支持动态增删改操作 * Created by liumao 2019/8/4 **/public class ControllerOrderArray { private int[] array; private int n; private int count; public...原创 2019-12-14 14:18:22 · 939 阅读 · 3 评论 -
循环链表的增删操作
package task1;/** * 功能:循环链表的增删操作 * Created by liumao 2019/8/4 **/public class CircularLinkedList { public static class LNode { private int data; private LNode next; ...原创 2019-12-14 14:17:31 · 271 阅读 · 0 评论 -
学习单链表
单链表定义单链表是一种链式存取的数据结构,用一组地址任意的存储单元存放线性表中的数据元素。链表中的数据是以节点来表示的,每个结点的构成:元素( 数据元素的映象) + 指针(指示后继元素存储位置),元素就是存储数据的存储单元,指针就是连接每个结点的地址数据。单链表结构┌───┬───┐│data │next │└───┴───┘data域–存放结点值的数据域next域–存放结点的直接...原创 2019-12-14 13:58:12 · 283 阅读 · 0 评论 -
数据结构-- 队列 循环与顺序
java实现,控制台输入输出! 1 package cn.lm.deque; 2 /** 3 * 链式队列 4 */ 5 import java.io.Serializable; 6 import java.util.Arrays; 7 import java.util.Scanner; 8 9 public class LoopQueue i原创 2017-12-20 09:56:52 · 282 阅读 · 0 评论