• 2023-12-24数据结构习题24/12/24
    这道题目可以考虑,如果前缀是一样的长度,那么只需要两个链表同时向后检索,直到找到一样的元素为止。所以应该先找到两个链表的长度,然后将较长的一个链表的多出来的前缀部分删掉,也就不去看这一部分。因为后缀都是一样的,所以长度的差异只可能来自前缀。解决代码:typedefstructNode{
  • 2023-11-11记录C语言实现的单向链表
    利用C语言实现的单向链表接口函数。#include<stdio.h>#include<stdlib.h>#include<stdbool.h>typedefvoid*OSMutex_t;//duration:-1forever;0nowait;nmillionseconds.//return0ifsuccess.staticintOSMutex_lock(OSMutex_tmutex,intdurat
  • 2023-08-27链栈的定义、初始化、出栈、入栈等操作
    #include<iostream>usingnamespacestd;/*链栈的定义*/typedefstructsNode{chardata;structsNode*next;}sNode;typedefsNode*linkStack;/*初始化链栈*/voidinitStack_L(linkStack&S){S=newsNode;S->next=NULL;}/*建立一个链栈
  • 2023-07-21数据结构练习笔记——链式栈的设计与实现
    链式栈的设计与实现【问题描述】采用链式存储结构实现栈的基本操作,并借助栈实现进制转换。【输入形式】整数【输出形式】二进制数【样例输入】10【样例输出】1010#include<iostream>usingnamespacestd;#include<stdlib.h>structsnode{intdata;sn
  • 2023-03-302023-03-30-链栈LinkStack的实现
    1#include<stdio.h>2#include<malloc.h>34typedefstructSNode5{6intdata;7structSNode*next;8}SNode,*LinkStack;9//栈的主要操作是在栈顶进行插入和删除,所以将链表的头部看为栈顶最合适10voidinitLinkStack(LinkStackS)//初始化1
  • 2023-01-25线性表之堆栈
    什么是堆栈像叠盘子一样,先放下的在下面,先拿出来的却是最上面的,也就是,先进去的最后才出来先进后出的就是堆栈堆栈的操作生成空堆栈,其最大长度为MaxSize判断堆栈S是
  • 2022-11-30【转】一致性hash算法与server列表维护
      普通的hash算法有个很大的问题:当hash的"模数"发生变化时,整个hash数据结构就需要重新hash,重新hash之后的数据分布一定会和hash之前的不同;在很多场景下,"模数"的变