ICode9

精准搜索请尝试: 精确搜索
  • linux的堆管理及攻击(ptmalloc)2022-05-16 15:01:28

    堆基础 堆简介 (部分参考与libc源码) 不同的平台有不同的堆内存管理机制,比如: 管理机制对应的相关的平台 dlmalloc General purpose allocator ptmalloc2 glibc jemalloc FreeBSD and Firefox tcmalloc Google libumem Solaris 本来linux默认的是dlmalloc,但是由

  • 【数据结构与算法】栈 stack2022-05-14 05:31:07

    栈的简介 栈是一种线性的逻辑结构,可依赖数组和链表这两种物理结构实现,是一种FILO的结构。以下是生活中遇到的栈的结构:       栈的形式化定义为 栈(Stack)简记为 S,是一个二元组,顾定义为S = (D, R)其中:D 是数据元素的有限集合;R 是数据元素之间关系的有限集合。   栈顶指针保存

  • call stack2022-05-12 19:33:10

  • 最大栈2022-05-07 23:01:15

    题目: 思路: ​ 使用一个主栈(stack)+辅助栈(assistStack),assistStack 的栈顶永远是最大值。 1、push: 1.1 对于 stack 来说,直接push即可:stack.push(x); 1.2 对于 assistStack 来说,要进行判断,它 push 待插入的 x 和它栈顶两者最大的那个; 2、pop:两个栈都 pop,返回 stak 的 pop 值; 3、

  • Docker安装 Redis Stack(开发适配-提供 Redis Stack 服务器和RedisInsight可视化) (6.2.2-v3版本)2022-05-06 12:35:08

    一、使用docker安装(开发适配-提供 Redis Stack 服务器和RedisInsight) (6.2.2-v3版本) 简介 安装命令根据实际部署情况调整 版本地址:官方镜像主页 | 发布版Tags 指定版本命令-推荐 : docker pull redis/redis-stack:6.2.2-v3 最新版本命令-不推荐 : docker pull redis/redis-stac

  • 二叉树-搜索二叉树2022-05-06 00:00:08

    搜索二叉树定义: 每一颗子树,左树都比节点小,右树都比节点大,无重复值。 中序遍历 依次递增就行 public static Integer preValue = Integer.MIN_VALUE; public static boolean isBst(Node head){ if(head == null){ return true; } // 先遍历左子树 boolean

  • LeetCode每日一练【20】2022-05-03 11:03:51

    Valid Parentheses 我的解法 我的第一次提交 介绍 介绍, 介绍个锤子, 又不难! 思路 创建栈stack用来存储: (, [, { 遍历原始字符串 如果是(, [, {, 就入栈stack 如果是), 就检查栈顶元素是否为(, 如果是就出栈 如果是], 同2 如果是}, 同2 检查指针i=arr.length ? 和 stack

  • Leetcode 394 字符串解码 用栈处理层级结构2022-05-02 22:33:03

      C 手写栈结构: #include <stdlib.h> #include <stdio.h> #include <string.h> #include "stdbool.h" struct Node { char val; int num; struct Node *next; struct Node *pre; }; struct Stack { struct Node *head; st

  • c++ stack容器2022-05-01 17:05:00

       stack 基本概念 概念:stack是一种先进后出(First In Last Out,FILO)的数据结构,它只有一个出口     栈中只有顶端的元素才可以被外界使用,因此栈不允许有遍历行为 栈中进入数据称为 --- 入栈 push 栈中弹出数据称为 --- 出栈 pop 生活中的栈:     stack 常用接口 功能

  • 剑指offer一刷:栈与队列2022-05-01 12:04:56

    剑指 Offer 09. 用两个栈实现队列 难度:简单 设计栈 A 用于加入队尾操作,栈 B 用于将元素倒序,从而实现删除队首元素。 class CQueue { LinkedList<Integer> A, B; public CQueue() { A = new LinkedList<Integer>(); B = new LinkedList<Integer>();

  • 栈的概念以及栈溢出2022-05-01 10:35:38

    在《C语言程序的内存布局(内存模型)》中我们讲到,程序的虚拟地址空间分为多个区域,栈(Stack)是其中地址较高的一个区域。栈(Stack)可以存放函数参数、局部变量、局部数组等作用范围在函数内部的数据,它的用途就是完成函数的调用。 栈内存由系统自动分配和释放:发生函数调用时就为函数运行时

  • ARM接口技术——中断控制器2022-04-27 05:00:06

    ARM中断的介绍 ARM中断 不同的处理器对中断的处理流程大体相同,但是具体的实现细节会差别。 ARM异常源 ARM中断也是异常的一种,ARM处理器有以下几种异常源: FIQ IRQ Reset Software Interrupt Data Abort Prefetch Abort Undefined Instruction 中断虽然是异常,但不完全是错误,异常也

  • leetcode单调栈-每日温度2022-04-25 10:34:45

    import java.util.Stack; /** <p>给定一个整数数组&nbsp;<code>temperatures</code>&nbsp;,表示每天的温度,返回一个数组&nbsp;<code>answer</code>&nbsp;,其中&nbsp;<code>answer[i]</code>&nbsp;是指在第 <code>i</code&g

  • Z-Stack中DHT11温湿度传感器2022-04-24 23:31:06

    hal_dht11.h hal_dht11.h对外提供了一个简单的结构体 typedef struct { unsigned char ok; //!< 数据是否合法 unsigned char temp; //!< 温度数据, 0~50. unsigned char humi; //!< 湿度数据, 20~95. } halDHT11Data_t; 不难看出,halDHT11Data_t结构体里同时打包

  • LeetCode 0071 Simplify Path2022-04-24 07:00:21

    原题传送门 1. 题目描述 2. Solution 1、思路分析 分析 对于 path 的预处理: 两端去空白 + '/' 分割 -> 得到 String[] dirs 遍历 dirs,工作变量为dir case 1. dir = "." -> do nothing case 2. dir = ".." 显然,需要把之前遍历到的dir缓存,需要返回上一级,符合后进先出(栈) -> 弹栈

  • Java 源码 - Stack 集合类2022-04-23 18:33:16

    介绍 The Stack class represents a last-in-first-out stack of objects. It extends class Vector with five operations that allow a vector to be treated as a stack. 示例 public class Test { public static void main(String[] args) { Stack<String> stack

  • Leetcode 234. 回文链表2022-04-22 16:03:52

    234. 回文链表 - 力扣(LeetCode) (leetcode-cn.com)       思路 1 用栈: 1.先将head从头到尾都压入栈。 2.依次从栈中取出节点,和head及其后续节点进行比较。 3.如果从前向后第x节点和从后向前第x节点的值不相同,则这个链表不是回文链表。 func isPalindrome(head *ListNode) bool

  • C# 实现DFS(深度优先遍历)的三种方式2022-04-22 13:32:25

    有一个美丽的传说:所有递归都能用循环代替——DFS、Backtracking也不例外……真的是这样吗?今天就为您揭开迷底! 正文 using System; using System.Collections.Generic; using System.Linq; namespace HelloRider { // 二叉树结点 class Node { public int V

  • 牛客华为机试HJ772022-04-22 07:01:11

    原题传送门 1. 问题描述 2. Solution import sys if sys.platform != "linux": file_in = open("input/HJ77.txt") sys.stdin = file_in res = [] def dfs(nums, stack, out): if not nums and not stack: res.append(' '.join

  • 牛客华为机试HJ702022-04-21 07:31:06

    原题传送门 1. 题目描述 2. Solution 1 1、思路分析 dim(A) = (m, n), dim(B) = (n, p) AB = mp 2、代码实现 import sys if sys.platform != "linux": sys.stdin = open("input/HJ70.txt") while True: try: n = int(input().strip()) dims = []

  • 栈的应用2022-04-21 01:04:20

    https://leetcode-cn.com/problems/valid-parentheses/ func isValid(s string) bool { n := len(s) if n%2 != 0 { return false } f := func(a, b byte) bool { return (a == "{"[0] && b == "}"[0]) || (a == "["[0] &

  • 856. Score of Parentheses2022-04-19 10:34:37

    class Solution { public int scoreOfParentheses(String s) { Stack<Integer> st = new Stack<>(); int score = 0; for(int i = 0; i < s.length(); i++){ char ch = s.charAt(i); if(ch == '(�

  • 385. 迷你语法分析器2022-04-15 23:34:52

    给定一个字符串 s 表示一个整数嵌套列表,实现一个解析它的语法分析器并返回解析的结果 NestedInteger 。 列表中的每个元素只可能是整数或整数嵌套列表 示例 1: 输入:s = "324", 输出:324 解释:你应该返回一个 NestedInteger 对象,其中只包含整数值 324。 示例 2: 输入:s = "[123,[456,[

  • 算法-16单调栈结构2022-04-15 20:03:12

    单调栈(monotone-stack)是指栈内元素(栈底到栈顶)都是(严格)单调递增或者单调递减的。 如果有新的元素入栈,栈调整过程中 会将所有破坏单调性的栈顶元素出栈,并且出栈的元素不会再次入栈 。由于每个元素只有一次入栈和出栈的操作,所以 单调栈的维护时间复杂度是O(n) 。 单调栈性质: 单调

  • 剑指 Offer 30. 包含min函数的栈2022-04-14 16:33:06

    剑指 Offer 30. 包含min函数的栈 定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的 min 函数在该栈中,调用 min、push 及 pop 的时间复杂度都是 O(1)。 思路 开一个栈用来做 push, pop,再开另外一个辅助栈用来维护 min 值 待填坑:还有不用辅助栈的做法 代码 class MinSta

专注分享技术,共同学习,共同进步。侵权联系[admin#icode9.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有