- 博客(33)
- 资源 (1)
- 收藏
- 关注
原创 算法分享 | 栈 + 贪心如何拿下字典序最小子序列?
这篇技术文章介绍了一种使用栈和贪心算法构造字典序最小子序列的方法。文章首先定义了问题:从给定字符串中提取满足字符数量要求且字典序最小的子序列。核心思路包括:1)统计字符剩余数量;2)遍历字符串时跳过配额已满的字符;3)在保证后续字符足够的前提下,弹出比当前字符大的栈顶元素以优化字典序。文章特别解释了为什么不需要处理配额已满的字符,并强调了该方法不是维护严格单调栈,而是在配额约束下的最优选择。最后提供了Python和C++的实现代码,并推荐了相关练习题目。整篇文章逻辑清晰,技术要点突出,示例代码完整。
2025-08-27 15:49:40
553
原创 【踩坑记录】RDKit ImportError: libXrender.so.1: cannot open shared object file: No such file or directory
本文记录了使用RDKit时遇到的"libXrender.so.1缺失"错误的分析与解决方法。该错误是由于Linux系统缺少图形依赖库(libxrender1/libsm6/libxext6)导致的。文章提供了三种解决方案:通过apt安装系统依赖、conda安装完整环境、Colab环境下的安装方法,并建议不需要绘图功能的用户可只导入Chem模块绕过问题。最后指出这类".so文件缺失"错误通常可通过安装对应系统依赖解决。
2025-08-27 14:02:12
503
原创 华为OD机试题 (版本管理——可用版本号数目)
在软件版本管理中,版本号由点分割的数字组成,例如1.2.3和1.2.5现在,你需要编写一个函数,计算两个版本号之间的可用版本号个数。这里的可用版本号指的是所有满足version1<x<version2的版本号x的个数。若version1 >= version2,返回0.输出一个整数,表示可用版本号的个数。1.2,1.4输出1 (4 - 2 - 1)输出4 (5 - 0 - 1)
2025-06-25 10:05:33
293
原创 华为 OD 机试题 —— 停车场费用统计
停车场统计当日总收费,提供停车场进出车辆的统计信息,需要你来计算停车场统计当日的总收费。第一行输入一个整数n 表示今日进出停车场的包月的车辆数下n行输入包月车的车牌号(6-10位)接下来每一行输出进出停车场的车辆信息。进入停车场格式为(时间 车牌号 enter)离开停车场格式为(时间 车牌号 leave)时间格式:时(24小时制):分输出一个整数代表今日总收费0输出: 7。
2025-06-25 09:53:50
583
原创 字节手撕题—不超过n的最大值
字节经典手撕算法题,给定一个按 非递减顺序 排列的数字数组 digits。你可以用任意次数 digits[i],求组成的数字中小于 n 的最大值。
2025-04-18 15:55:47
658
原创 哈希表(模拟散列表&&字符串哈希)
给定一个长度为 n 的字符串,再给定 m 个询问,每个询问包含四个整数 l1, r1, l2, r2。判断[l1, r1], [l2, r2]两个子串是否相同。
2023-08-13 14:28:44
79
原创 堆的实现(up down操作)
DM,删除当前集合中的最小值(数据保证此时的最小值唯一)C k x,修改第 k 个插入的数,将其变为 x。D k,删除第 k 个插入的数;PM,输出当前集合中的最小值。
2023-08-13 12:38:17
73
原创 拿到一个Linux虚拟机应该做什么
文章目录1.修改主机名2.下载相关工具3.修改为静止IP1.修改主机名hostname set-hostname xxx2.下载相关工具yum install -y vim tree lrzsz wget curl unzip net-tools3.修改为静止IPvim /etc/sysconfig/network-scripts/ifcfg-ens33删去UUID一行BBOTPROTO='dhcp'改为BBOTPROTO='static'或直接删去该行添行:IPADDR=//ip
2022-08-22 13:52:06
264
原创 合肥工业大学HFUT编译原理课程设计---算数表达式转四元式 语法制导翻译(C++实现 QT实现GUI)
合肥工业大学编译原理课程设计 49.算术表达式转四元式 语法制导翻译
2022-08-03 18:03:09
823
原创 数据结构学习
数据结构学习记录1.含头结点链表的基本运算的实现函数:1.初始化链表2.求链表长度3.按序号取元素结点,并返回结点指针4.按值查询元素5.插入元素6.删除元素(以下为测试函数)7.尾插法建立链表(法1,法2)8.显示链表代码如下:#include <stdio.h>#include <stdlib.h>typedef int elementtype;typedef struct Node //作为结构体封
2021-03-29 20:55:48
258
原创 递归之八皇后问题
递归典例之八皇后问题问题描述:在8×8格的国际象棋上摆放8个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法。分析:先将棋盘的危险和安全数字化,1为危险,0为安全,皇后被放置前棋盘所有位置均为0。我们从第一列至第八列依次考虑,先考虑第一列,第一列我们有八种选择,但要注意,循环选择第一列元素时,要记得重置棋盘!选择一个位置我们用chose函数来表示。chose的作用是先判断此次选择的位置是不是最后一列,若不是,则将此次放置位置的同行同列及同对角线全置为1,并且将
2021-03-27 18:18:45
392
2
原创 PAT刷题集锦
前言本人仅借此篇博客来记录自己的PAT刷题过程,希望可以对大家有一点帮助!(目前在刷乙级题,纯C代码,欢迎大家来一起交流)一、害死人不偿命的3n+1猜想PAT原题链接卡拉兹(Callatz)猜想:对任何一个正整数 n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把 (3n+1) 砍掉一半。这样一直反复砍下去,最后一定在某一步得到 n=1。卡拉兹在 1950 年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证
2021-03-27 17:15:32
694
合肥工业大学HFUT编译原理课设(优) 49.将算术表达式转换成四元式的程序实现
2022-08-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅