• 2024-04-07Swoole 源码分析之 Timer 定时器模块
    原文首发链接:Swoole源码分析之Timer定时器模块大家好,我是码农先森。引言Swoole中的毫秒精度的定时器。底层基于epoll_wait和setitimer实现,数据结构使用最小堆,可支持添加大量定时器。在同步IO进程中使用setitimer和信号实现,如Manager和TaskWorker进程,在异步IO
  • 2024-02-13二叉树层次建树+遍历
    1.BiTree层次建树实现使用二叉树的链式存储,必须要构造一个辅助链式队列,用pcur遍历树结点,实现代码如下:代码实现//二叉树层次建树+画图2024-02-12#include<iostream>#include<cstdio>usingnamespacestd;//树结点的数据结构typedefcharElemType;typedefstructT
  • 2024-01-24KY11 二叉树遍历C++
    这个题目思路其实就是先序遍历的变形。相当于沿着先序遍历的顺序跟着构建二叉树就行。然后中序遍历这个树。#include<iostream>#include<string>usingnamespacestd;structtnode{chardata;structtnode*left;structtnode*right;};typedefstructt
  • 2023-12-30二叉排序树
    1#include<iostream>2#include<fstream>3usingnamespacestd;45structTnode6{7intdata;8Tnode*lchil,*rchil;9};1011//向二叉排序树种插入固定值的节点12voidinsert(Tnode**t,inta)13{14//如果*t所指为
  • 2023-11-16区间树上查找所有与给定区间相交的区间-算法复杂度正确性证明
    区间树是在平衡树上维护的数据结构,按照左端点大小排序。详见《算法导论》。算法设计思路红黑树的拓展在红黑树上维护结点属性\(min,max\):\(min\)表示该结点及其所有后代结点中的区间低端的最小值。\(max\)表示该结点及其所有后代结点中的区间高端的最大值。在插入时,对结点
  • 2023-09-27根据一个数组,创建一个Segment Tree(线段树)
    线段树的特点线段树的优势线段树的构造过程(0,5)37:数组元素下标0~5的元素之和是37(0,2)21:数组元素下标0~2的元素之和是21线段树的基本数据结构(结点结构由五个分量组成)运行结果(C语言代码)递归的创建一颗线段树,然后中序、先序、后序遍历这个结点#include<stdio.h>#include<st
  • 2023-09-05P5812 [IOI2019] 天桥
    优化建图,首先分几种情况讨论。假设当前的桥\(l,r,h\)。起点和终点是\(S,T\)。第一种情况:\(S\leql<r\leqT\)。容易发现如果要从这条天桥中间上这条天桥,一定经过\(l\)或\(r\),不如直接走上去。所以只用保留\((l,h),(r,h)\)和他们往下的一个其他天桥与该楼的交点,这个交
  • 2022-11-11动态构建TreeView(中国省市区)
    .aspx代码如下:<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="中国市区县.aspx.cs"Inherits="中国市区县"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0
  • 2022-11-11asp.net--slider控件
    .aspx代码如下:<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="slider_综合实例.aspx.cs"Inherits="lesson_code_Default2"%><!DOCTYPEhtmlPUBLIC"-//W3C//
  • 2022-09-23Trie树(字典树,前缀树)
    Trie中文名又叫做字典树,前缀树等,因为其结构独有的特点,经常被用来统计,排序,和保存大量的字符串,经常见于搜索提示,输入法文字关联等,当输入一个值,可以自动搜索出可能的选择。当