- Linux 下aria2 下载神器使用详解
我是唐青枫
Linuxlinux运维服务器
简介aria2是一个轻量级的多协议命令行下载实用工具。它支持各种协议,如HTTP,HTTPS,FTP,SFTP,BitTorrent和Metalink。它以使用多个连接同时从多个来源下载文件的能力而闻名,从而提高了下载速度。安装Debian/Ubuntusudoaptupdatesudoaptinstallaria2CentOS/RHELsudoyuminstallaria2Fedorasudod
- Crontab使用教程
IKun-bug
linux运维服务器
目录什么是Crontab验证cron是否已安装并可用检查服务状态:安装cronie(或crond)在CentOS、RHEL、Fedora:在Ubuntu/Debian:验证安装是否成功:Crontab基本语法示例Crontab的基本操作创建/编辑任务查看现有任务删除所有任务什么是Crontabcrontab是Linux下用于定时执行任务的重要工具,它通过简单的语法在指定时间周期内执行相关的命令或脚
- 极狐GitLab 正式发布最新版本 17.6
沿袭我们的月度发布传统,极狐GitLab发布了17.6版本,该版本带来了增强的合并请求审核者指派、在部署详情页面显示版本注释、在部署详情页面显示版本注释等几十个重点功能的改进。下面是部分重点功能的详细解读。关于极狐GitLab的安装升级,可以查看官方指导文档。17.6容器镜像registry.gitlab.cn/omnibus/gitlab-jh:17.6.0-jh.017.6HelmCharth
- 在linux系统下安装node.js
做一个AK梦
node.js
CentOS或Fedora上安装Node.js:使用yum安装(适用于CentOS7及更早版本):执行以下命令来安装Node.js和npm:sudoyuminstallnodejsnpm安装Node.js和npm:执行以下命令来安装Node.js和npm:sudoaptinstallnodejsnpm验证安装:安装完成后,你可以通过以下命令来验证Node.js和npm是否成功安装:node-vnp
- 解决海康相机SDK导致 `libusb_set_option` 问题的经验总结
点云兔子
BUG数码相机
在使用海康相机SDK时,可能会遇到以下问题:问题描述当编译某些ROS代码时,出现类似错误:/usr/bin/ld:…/…/lib/libpcl_io.so.1.8.0:undefinedreferenceto`libusb_set_option’原因分析安装海康相机SDK后,系统原本的libusb依赖会被重新链接到海康SDK指定的路径。由于libusb是许多外设程序的重要依赖库,这种更改可能导致其
- 架构第二十九章:haproxy
琴剑诗酒
架构
1、下载安装Haproxy1.1、下载下载地址:https://src.fedoraproject.org/repo/pkgs/haproxy/1.2、安装将下载的安装包上传至服务器。tar-xvfhaproxy-2.6.6.tar.gzcdhaproxy-2.6.6makeTARGET=linux31#centos7.x是linux31、centos6.x是linux26sudomakeinst
- CMakeFile调试
Victor YU223
杂记linuxc++
cmake_minimum_required(VERSION3.1)set(EXE_NAMEch347-nor-prog)project(${EXE_NAME}CCXX)find_package(PkgConfig)pkg_check_modules(libusb-1.0REQUIREDIMPORTED_TARGETlibusb-1.0)include_directories(/usr/local
- 【linux】centos 安装 python-pip
bestBT
linux
安装django时候发现yuminstallpython-pip的时候没有该软件包这是因为像centos这类衍生出来的发行版,他们的源有时候内容更新的比较滞后,或者说有时候一些扩展的源根本就没有。所以在使用yum来searchpython-pip的时候,会说没有找到该软件包。因此为了能够安装这些包,需要先安装扩展源EPEL。EPEL(http://fedoraproject.org/wiki/EP
- Linux中基于RPM安装YUM的另一种方式
lingllllove
linux运维服务器
在Linux系统中,YUM(YellowdogUpdater,Modified)是一个广泛使用的软件包管理工具,主要用于RedHat系的发行版(如RHEL、CentOS、Fedora)。虽然YUM通常是通过预装或者在线仓库安装,但在某些情况下,如离线环境中,我们可能需要基于RPM包来安装YUM。本文将详细介绍这种基于RPM安装YUM的方法。一、前提条件在开始之前,确保您有以下准备:具有root用户
- Linux 系统上安装 Docker 方法详解与比较
嵌入式Jerry
Dockerlinuxdocker运维
Docker是现代DevOps和容器化应用开发的重要工具,它简化了应用的部署和管理流程。本文将详细介绍在Linux系统上安装Docker的多种方法,并对它们的适用场景、优缺点进行对比,确保读者能够根据自身需求选择最优方案。1.官方推荐的安装方法Docker官方提供了基于APT(Debian/Ubuntu)、DNF/YUM(RHEL/CentOS/Fedora)和Zypper(openSUSE)的安
- [笔记] 极狐GitLab实例 : 手动备份步骤总结
鲁子狄
笔记#集成开发环境#Linux笔记gitlab运维linuxubuntucentos
官方备份文档:备份和恢复极狐GitLab一.要求为了能够进行备份和恢复,请确保您系统已安装Rsync。如果您安装了极狐GitLab:如果您使用Omnibus软件包,则无需额外操作。如果您使用源代码安装,您需要确定是否安装了rsync。例如:#Debian/Ubuntusudoapt-getinstallrsync#RHEL/CentOSsudoyuminstallrsync二.备份时间戳备份归档保
- amazon-kinesis-video-streams-webrtc-sdk-c 移植到linux开发板
CSDN369369
webrtcc语言linux
大部分参考这位大神的资料分析依赖关系。通过分析Cmakelist.txt得出了一些依赖关系。libkvsWebrtcClient.so依赖项如下:libkvspicUtils.alibkvspicState.alibssl.solibcrypto.solibsrtp2.a.libusrsctp.solibkvsWebrtcSignalingClient.so依赖项如下:libkvsCommonLw
- Linux pstree 命令详解
linuxlinux运维
简介pstree命令用于以分层(树状)格式显示正在运行的进程。它显示进程之间的关系,例如哪些进程是由其他进程生成的。安装#基于Debian/Ubuntu的系统sudoaptinstallpsmisc#基于CentOS/RHEL/Fedora的系统sudoyuminstallpsmisc#使用dnf安装sudodnfinstallpsmisc基本语法pstree[options][pid|user]
- CSGHub 快速部署指南
算法llm
CSGHub快速部署指南OmnibusCSGHub是OpenCSG推出的使用Docker快速部署CSGHub的一种方式,主要用于快速功能体验和测试。Docker部署方式允许用户以较低成本在本地计算机部署CSGHub。此种部署方法非常适合概念验证和测试,使用户能够立即访问CSGHub的核心功能(包括模型,数据集管理、Space应用创建以及模型的推理和微调(需要GPU))。本文将带您一步步完成部署。什
- linux系统的目录结构
Petrus_shuai
linuxlinux系统目录结构
一.目录结构详述linux系统的目录结构最顶端是“/”,一切目录从根开始。我们可以通过tree命令得到根(/)下的目录结构。[root@linux01~]#tree-L1//├──bin->usr/binusr/libusr/lib64├──media├──mnt实际都是内存中的信息├──rootusr/sbinrc.d/init.d说明:/etc/init.d等价于/etc/rc.d/init.
- 如何在龙蜥蜴 OS(AliOS)上安装极狐GitLab?
gitgitlab私有化部署
本文分享如何在龙蜥操作系统(AliOS)(包括RHCK和ANCK两种,两种方式的安装流程一样)上安装极狐GitLab?前提条件一个安装了龙蜥操作系统的云服务器可以查看/etc/os-release中的信息,确认操作系统信息:NAME="AnolisOS"VERSION="8.9"ID="anolis"ID_LIKE="rhelfedoracentos"VERSION_ID="8.9"PLATFOR
- Linux axel 下载加速命令详解
linux
简介axel命令是一个轻量级、快速且用户友好的Linux命令行下载加速器。它通过将文件分割成片段并同时下载来加快下载速度,这对于大文件和网络不好时尤其有用。axel支持HTTP、HTTPS、FTP和FTPS协议。安装Debian/UbuntusudoaptupdatesudoaptinstallaxelCentOS/RHELsudoyuminstallaxelFedorasudodnfinstal
- 如何安装linux版本的node.js
m0_74824755
linuxnode.js运维
在Linux系统上安装Node.js可以通过多种方式。以下是一些常见的安装方法:方法1:使用包管理器Ubuntu/Debian更新包信息:sudoaptupdate安装Node.js和npm:sudoaptinstallnodejsnpm验证安装:node-vnpm-vCentOS/Fedora使用EPEL存储库安装Node.js:sudoyuminstallepel-releasesudoyum
- v10 server 安装EPEL、PowerTools 存储库【1】
风儿你慢慢吹
Linuxlinux
步骤1:启用PowerTools存储库要设置滚动,启动终端并安装核心DNF插件如下。$sudodnfinstalldnf-plugins-core安装后,转到下一步并启用EPEL存储库。第2步:启用EPEL存储库下一步是安装EPEL。EPEL是ExtraPackagesforEnterpriseLinux的首字母缩写词,是一个存储库,提供一组来自Fedora默认情况下不包含在RedHat和RedH
- ubuntu 配置OpenOCD与RT-RT-thread环境的记录
carl.xu
ubuntulinux运维
1.gitclonegit://git.code.sf.net/p/openocd/codeopenocd配置gcc编译环境2.sudogedit/etc/apt/source.list#cdromsudoapt-getinstallgitsudoapt-getinstalllibtool-binsudoapt-getinstallpkg-configsudoapt-installlibusb-1
- yum源介绍
RedCong
CentOS服务器centoslinux
什么是yumYUM全程(YELLOWDOGUPDATERMODIFIED),他其实就是CENTOS/RHEL/FEDORA下的软件管理工具。基于rpm包进行管理,能够从指定的服务器下(YUM源)自动下载RPM包并安装。可以自动管理rpm包之间的依赖关系的。常见的YUM源模式:一网络YUM源模式:需要依赖网络,但是包的质量和省心程度是最优质的。选择优质的YUM以后,就可以使用该YUM源去安装相关的r
- 如何在 Rocky Linux 上安装极狐GitLab?
gitgitlab私有化部署
本文分享如何在RockyLinux操作系统上安装极狐GitLab。前提条件一个安装了RockyLinux操作系统的云服务器可以查看/etc/os-release中的信息,确认操作系统信息:NAME="RockyLinux"VERSION="8.10(GreenObsidian)"ID="rocky"ID_LIKE="rhelcentosfedora"VERSION_ID="8.10"PLATFOR
- Python 抓取图片
weixin_30477797
python
#coding:utf-8frombs4importBeautifulSoupimportrequestsimporturllibuser_agent='Mozilla/5.0(WindowsNT6.1;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/63.0.3239.132Safari/537.36'headers={'User-Agen
- linux快速删除大量目录,Linux 快速删除大量小文件方法
摸鱼的月鸪
linux快速删除大量目录
当我们在linux系统中要删除数万或者数十万甚至数百万的文件时使用rm-rf*就不太好用,因为要等待很长一段时间。在这种情况之下我们可以使用linux系统命令rsync来巧妙的处理。rsync实际上用的是替换原理,处理数十万个文件也是秒删。1.rsync安装,有些系统默认安装有该命令Ubuntu系统:sudoapt-getinstallrsyncFedora系统:sudoyuminstallrsy
- yum的基本使用方法
云夏之末
Linuxlinux运维服务器
`yum`(全称"YellowdogUpdaterModified")是基于RPM包管理器的软件包管理系统,主要用于Fedora和RedHat系列的Linux发行版中。它允许用户安装、更新、删除以及搜索软件包,并能自动处理软件包之间的依赖关系。下面是一些基本的`yum`命令用法示例:基本操作更新系统: sudoyumupdate这个命令会检查所有已安装的软件包是否有新版本可用,并尝试更新它们。更新
- linux系统发行版安装,linux学习笔记(一)Linux的发行版&安装centos7
萌萌爱恋
linux系统发行版安装
Linux的发行版Slackware特点就是安装灵活,目录结构严谨,版本力求稳定而非追新。s.u.s.eSuSE拥有界面友好的安装过程,还有图形管理工具。据说是最好看的linux图形界面,但是服务器上少有图形界面,不适合用于服务器。RedHatRedHatEnterpriseLinux(RHEL)RHEL,是redhat发展出来的企业版本分支,版本迭代慢。FedoraFedora是一套从RedHa
- fedora siliverblue adb
xiaguangbo
linuxlinux
开始1、找到手机usb的idV:$lsusb...Bus001Device012:ID22d9:2766OPPOElectronicsCorp.PECM30是22d92、在toolbox外面添加udev:sudonano/etc/udev/rules.d/51-android.rulesSUBSYSTEM=="usb",ATTR{idVendor}=="22d9",OWNER="abc"abc是自
- dbus-sensors与libgpiod
logiciel
OpenBMC
1开发平台Win11、VS2022、Fedora39。2debus-sensors简介以下摘自openbmc/dbus-sensors:D-Busconfigurablesensorscanningapplications(github.com):dbus-sensorsisacollectionofsensorapplicationsthatprovidethexyz.openbmc_proje
- css渐变边框的两种方案
冰眸js
前端javascripthtml
方案一:双层元素,使用一个单独的元素作为渐变色背景放在最下层,上层设置一个透明的border和纯色的背景(需要设置background-clip:padding-box以避免盖住下层元素的border),上下两层设置相同的border-radius。Loremipsumdolor,sitametconsecteturadipisicingelit.Isterationenecessitatibus
- Centos 8 下安装 php-pecl-redis 扩展
New小青龙
redisphp部署centosredisphp
官方安装说明:https://github.com/phpredis/phpredis/blob/develop/INSTALL.markdown尝试用dnf或yum安装#dnfinstallphp-pecl-redis或#yuminstallphp-pecl-redis安装不成功,再按https://fedoraproject.org/wiki/EPEL的说明,执行以下指令尝试安装#yumins
- JAVA基础
灵静志远
位运算加载Date字符串池覆盖
一、类的初始化顺序
1 (静态变量,静态代码块)-->(变量,初始化块)--> 构造器
同一括号里的,根据它们在程序中的顺序来决定。上面所述是同一类中。如果是继承的情况,那就在父类到子类交替初始化。
二、String
1 String a = "abc";
JAVA虚拟机首先在字符串池中查找是否已经存在了值为"abc"的对象,根
- keepalived实现redis主从高可用
bylijinnan
redis
方案说明
两台机器(称为A和B),以统一的VIP对外提供服务
1.正常情况下,A和B都启动,B会把A的数据同步过来(B is slave of A)
2.当A挂了后,VIP漂移到B;B的keepalived 通知redis 执行:slaveof no one,由B提供服务
3.当A起来后,VIP不切换,仍在B上面;而A的keepalived 通知redis 执行slaveof B,开始
- java文件操作大全
0624chenhong
java
最近在博客园看到一篇比较全面的文件操作文章,转过来留着。
http://www.cnblogs.com/zhuocheng/archive/2011/12/12/2285290.html
转自http://blog.sina.com.cn/s/blog_4a9f789a0100ik3p.html
一.获得控制台用户输入的信息
&nbs
- android学习任务
不懂事的小屁孩
工作
任务
完成情况 搞清楚带箭头的pupupwindows和不带的使用 已完成 熟练使用pupupwindows和alertdialog,并搞清楚两者的区别 已完成 熟练使用android的线程handler,并敲示例代码 进行中 了解游戏2048的流程,并完成其代码工作 进行中-差几个actionbar 研究一下android的动画效果,写一个实例 已完成 复习fragem
- zoom.js
换个号韩国红果果
oom
它的基于bootstrap 的
https://raw.github.com/twbs/bootstrap/master/js/transition.js transition.js模块引用顺序
<link rel="stylesheet" href="style/zoom.css">
<script src=&q
- 详解Oracle云操作系统Solaris 11.2
蓝儿唯美
Solaris
当Oracle发布Solaris 11时,它将自己的操作系统称为第一个面向云的操作系统。Oracle在发布Solaris 11.2时继续它以云为中心的基调。但是,这些说法没有告诉我们为什么Solaris是配得上云的。幸好,我们不需要等太久。Solaris11.2有4个重要的技术可以在一个有效的云实现中发挥重要作用:OpenStack、内核域、统一存档(UA)和弹性虚拟交换(EVS)。
- spring学习——springmvc(一)
a-john
springMVC
Spring MVC基于模型-视图-控制器(Model-View-Controller,MVC)实现,能够帮助我们构建像Spring框架那样灵活和松耦合的Web应用程序。
1,跟踪Spring MVC的请求
请求的第一站是Spring的DispatcherServlet。与大多数基于Java的Web框架一样,Spring MVC所有的请求都会通过一个前端控制器Servlet。前
- hdu4342 History repeat itself-------多校联合五
aijuans
数论
水题就不多说什么了。
#include<iostream>#include<cstdlib>#include<stdio.h>#define ll __int64using namespace std;int main(){ int t; ll n; scanf("%d",&t); while(t--)
- EJB和javabean的区别
asia007
beanejb
EJB不是一般的JavaBean,EJB是企业级JavaBean,EJB一共分为3种,实体Bean,消息Bean,会话Bean,书写EJB是需要遵循一定的规范的,具体规范你可以参考相关的资料.另外,要运行EJB,你需要相应的EJB容器,比如Weblogic,Jboss等,而JavaBean不需要,只需要安装Tomcat就可以了
1.EJB用于服务端应用开发, 而JavaBeans
- Struts的action和Result总结
百合不是茶
strutsAction配置Result配置
一:Action的配置详解:
下面是一个Struts中一个空的Struts.xml的配置文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
&quo
- 如何带好自已的团队
bijian1013
项目管理团队管理团队
在网上看到博客"
怎么才能让团队成员好好干活"的评论,觉得写的比较好。 原文如下: 我做团队管理有几年了吧,我和你分享一下我认为带好团队的几点:
1.诚信
对团队内成员,无论是技术研究、交流、问题探讨,要尽可能的保持一种诚信的态度,用心去做好,你的团队会感觉得到。 2.努力提
- Java代码混淆工具
sunjing
ProGuard
Open Source Obfuscators
ProGuard
http://java-source.net/open-source/obfuscators/proguardProGuard is a free Java class file shrinker and obfuscator. It can detect and remove unused classes, fields, m
- 【Redis三】基于Redis sentinel的自动failover主从复制
bit1129
redis
在第二篇中使用2.8.17搭建了主从复制,但是它存在Master单点问题,为了解决这个问题,Redis从2.6开始引入sentinel,用于监控和管理Redis的主从复制环境,进行自动failover,即Master挂了后,sentinel自动从从服务器选出一个Master使主从复制集群仍然可以工作,如果Master醒来再次加入集群,只能以从服务器的形式工作。
什么是Sentine
- 使用代理实现Hibernate Dao层自动事务
白糖_
DAOspringAOP框架Hibernate
都说spring利用AOP实现自动事务处理机制非常好,但在只有hibernate这个框架情况下,我们开启session、管理事务就往往很麻烦。
public void save(Object obj){
Session session = this.getSession();
Transaction tran = session.beginTransaction();
try
- maven3实战读书笔记
braveCS
maven3
Maven简介
是什么?
Is a software project management and comprehension tool.项目管理工具
是基于POM概念(工程对象模型)
[设计重复、编码重复、文档重复、构建重复,maven最大化消除了构建的重复]
[与XP:简单、交流与反馈;测试驱动开发、十分钟构建、持续集成、富有信息的工作区]
功能:
- 编程之美-子数组的最大乘积
bylijinnan
编程之美
public class MaxProduct {
/**
* 编程之美 子数组的最大乘积
* 题目: 给定一个长度为N的整数数组,只允许使用乘法,不能用除法,计算任意N-1个数的组合中乘积中最大的一组,并写出算法的时间复杂度。
* 以下程序对应书上两种方法,求得“乘积中最大的一组”的乘积——都是有溢出的可能的。
* 但按题目的意思,是要求得这个子数组,而不
- 读书笔记-2
chengxuyuancsdn
读书笔记
1、反射
2、oracle年-月-日 时-分-秒
3、oracle创建有参、无参函数
4、oracle行转列
5、Struts2拦截器
6、Filter过滤器(web.xml)
1、反射
(1)检查类的结构
在java.lang.reflect包里有3个类Field,Method,Constructor分别用于描述类的域、方法和构造器。
2、oracle年月日时分秒
s
- [求学与房地产]慎重选择IT培训学校
comsci
it
关于培训学校的教学和教师的问题,我们就不讨论了,我主要关心的是这个问题
培训学校的教学楼和宿舍的环境和稳定性问题
我们大家都知道,房子是一个比较昂贵的东西,特别是那种能够当教室的房子...
&nb
- RMAN配置中通道(CHANNEL)相关参数 PARALLELISM 、FILESPERSET的关系
daizj
oraclermanfilespersetPARALLELISM
RMAN配置中通道(CHANNEL)相关参数 PARALLELISM 、FILESPERSET的关系 转
PARALLELISM ---
我们还可以通过parallelism参数来指定同时"自动"创建多少个通道:
RMAN > configure device type disk parallelism 3 ;
表示启动三个通道,可以加快备份恢复的速度。
- 简单排序:冒泡排序
dieslrae
冒泡排序
public void bubbleSort(int[] array){
for(int i=1;i<array.length;i++){
for(int k=0;k<array.length-i;k++){
if(array[k] > array[k+1]){
- 初二上学期难记单词三
dcj3sjt126com
sciet
concert 音乐会
tonight 今晚
famous 有名的;著名的
song 歌曲
thousand 千
accident 事故;灾难
careless 粗心的,大意的
break 折断;断裂;破碎
heart 心(脏)
happen 偶尔发生,碰巧
tourist 旅游者;观光者
science (自然)科学
marry 结婚
subject 题目;
- I.安装Memcahce 1. 安装依赖包libevent Memcache需要安装libevent,所以安装前可能需要执行 Shell代码 收藏代码
dcj3sjt126com
redis
wget http://download.redis.io/redis-stable.tar.gz
tar xvzf redis-stable.tar.gz
cd redis-stable
make
前面3步应该没有问题,主要的问题是执行make的时候,出现了异常。
异常一:
make[2]: cc: Command not found
异常原因:没有安装g
- 并发容器
shuizhaosi888
并发容器
通过并发容器来改善同步容器的性能,同步容器将所有对容器状态的访问都串行化,来实现线程安全,这种方式严重降低并发性,当多个线程访问时,吞吐量严重降低。
并发容器ConcurrentHashMap
替代同步基于散列的Map,通过Lock控制。
&nb
- Spring Security(12)——Remember-Me功能
234390216
Spring SecurityRemember Me记住我
Remember-Me功能
目录
1.1 概述
1.2 基于简单加密token的方法
1.3 基于持久化token的方法
1.4 Remember-Me相关接口和实现
- 位运算
焦志广
位运算
一、位运算符C语言提供了六种位运算符:
& 按位与
| 按位或
^ 按位异或
~ 取反
<< 左移
>> 右移
1. 按位与运算 按位与运算符"&"是双目运算符。其功能是参与运算的两数各对应的二进位相与。只有对应的两个二进位均为1时,结果位才为1 ,否则为0。参与运算的数以补码方式出现。
例如:9&am
- nodejs 数据库连接 mongodb mysql
liguangsong
mongodbmysqlnode数据库连接
1.mysql 连接
package.json中dependencies加入
"mysql":"~2.7.0"
执行 npm install
在config 下创建文件 database.js
- java动态编译
olive6615
javaHotSpotjvm动态编译
在HotSpot虚拟机中,有两个技术是至关重要的,即动态编译(Dynamic compilation)和Profiling。
HotSpot是如何动态编译Javad的bytecode呢?Java bytecode是以解释方式被load到虚拟机的。HotSpot里有一个运行监视器,即Profile Monitor,专门监视
- Storm0.9.5的集群部署配置优化
roadrunners
优化storm.yaml
nimbus结点配置(storm.yaml)信息:
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional inf
- 101个MySQL 的调节和优化的提示
tomcat_oracle
mysql
1. 拥有足够的物理内存来把整个InnoDB文件加载到内存中——在内存中访问文件时的速度要比在硬盘中访问时快的多。 2. 不惜一切代价避免使用Swap交换分区 – 交换时是从硬盘读取的,它的速度很慢。 3. 使用电池供电的RAM(注:RAM即随机存储器)。 4. 使用高级的RAID(注:Redundant Arrays of Inexpensive Disks,即磁盘阵列
- zoj 3829 Known Notation(贪心)
阿尔萨斯
ZOJ
题目链接:zoj 3829 Known Notation
题目大意:给定一个不完整的后缀表达式,要求有2种不同操作,用尽量少的操作使得表达式完整。
解题思路:贪心,数字的个数要要保证比∗的个数多1,不够的话优先补在开头是最优的。然后遍历一遍字符串,碰到数字+1,碰到∗-1,保证数字的个数大于等1,如果不够减的话,可以和最后面的一个数字交换位置(用栈维护十分方便),因为添加和交换代价都是1