- 解决“Unable to start embedded Tomcat“错误的完整指南
解决"UnabletostartembeddedTomcat"错误的完整指南在开发过程中,遇到"UnabletostartembeddedTomcat"错误是较为常见的问题。本文将从多个方面详细解析可能的原因,并提供相应的解决方案,帮助你快速排查并解决此问题。1.检查端口冲突步骤:确认端口是否被占用:Tomcat默认使用8080端口。你可以使用以下命令检查端口占用情况:netstat-ano|fi
- 8080端口被占用怎么解决?
码农博士
Tomcat
输入netstat-ano|findstr“8080”找到占用该端口的进程PID,本机为3864输入tasklist|findstr3864获取占用程序名称,我的电脑为ApplicationWebServertaskkill/f/t/imApplicationWebServer.exe将NIApplicationWebSerer服务设置为手动或禁用
- Linux如何查看端口
lanhuazui10
linux操作系统linux
方法一:lsof-i:端口号用于查看某一端口的占用情况,比如查看9092端口使用情况,lsof-i:9095可以看到9095端口已经被nginx占用方法二:netstat-tunlp|grep端口号,用于查看指定的端口号的进程情况,如查看5050端口的情况,netstat-tunlp|grep5050-t(tcp)仅显示tcp相关选项-u(udp)仅显示udp相关选项-n拒绝显示别名,能显示数字的
- Linux环境常用的一些网络相关的命令
编码小哥
Linux网络
在Linux环境中,处理网络相关任务有很多强大的命令行工具可用。下面列出了一些常用的网络相关命令及其简要说明:1.ping用于测试与另一台计算机的连接是否正常。示例:pingwww.example.com2.traceroute/tracert用来跟踪数据包从你的机器到目标主机所经过的路径。示例:traceroutewww.example.com3.netstat显示网络连接、路由表、接口统计等信
- [WinError 10013] 以一种访问权限不允许的方式做了一个访问套接字的尝试
lgc0208
服务器网络socket
在使用Tensorboard的过程中,遇到报错[WinError10013]以一种访问权限不允许的方式做了一个访问套接字的尝试可能原因:当前端口被占用。解决方案:以6006端口为例,首先打开命令行,输入命令:netstat-aon|findstr"6006"查找当前正在占用6006端口的进程PID。查询到对应进程PID后,打开任务管理器,点击详细信息,找到PID对应的进程关闭即可。
- linux查看网络链接的具体进程
lonelyhiker
linux网络运维
问题linux上有多个程序,都在访问同一个数据库,如何知道哪些网络连接,是由那个程序的进程发出的,通过netstat看不出具体是那个进程产生的链接。解决方案1在Linux上,如果你想查看哪个进程发起了对数据库的网络连接,netstat不提供直接的进程信息,但是你可以使用ss和lsof命令,结合PID(进程ID)来识别。方法1:使用ss命令ss是一种显示套接字统计信息的工具,类似于netstat,但
- linux查看某进程的连接,linux下查看指定进程的所有连接信息(转)
weixin_39850062
linux查看某进程的连接
定位某个进程的网络故障时经常需要用到的一个功能就是查找所有连接的信息。通常查找某个端口的连接信息使用ss或者netstat可以轻松拿到,如果是主动与别的机器建立的连接信息则可以通过lsof命令来获得。例如我想要查看进程frps当前的所有连接信息,先获得进程的pid:ps-ef|grepfrps结果为:wcl:?::./frps可以看到进程pid为4721,之后通过lsof命令查看所有TCP连接信息
- 系统信息性能模块psutil
浅水鲤鱼
linux运维服务器
psutil是一个跨平台库(第三方库/模块),能够获取系统进程进程及CPU,内存,磁盘、网络使用率等信息;主要用于监控系统,分析和限制系统资源及进程的管理它实现了n多个同等命令行工具实现的功能,如ps、top、lsof、netstat、ifconfig、who、df、kill、free、nice、ionice、iostat、iotop、uptime、pidof、tty、taskset、pmap等命
- 服务器访问端口命令
书中自有妍如玉
后端php开发语言
服务器访问端口命令是一组用于管理服务器端口的命令行指令。服务器端口是用于与外部设备或应用程序进行通信的逻辑通道,它允许数据在服务器和其他设备之间传输。以下是一些常见的服务器访问端口命令。netstat:这个命令用于检查服务器上当前的网络连接和网络统计信息。可以使用netstat-a命令列出服务器上所有的开放端口和它们的状态。telnet:这个命令允许用户远程连接到服务器,并在命令行上执行操作。可以
- 1 - Linux网络设置
活老鬼
Linux网络服务linux网络服务器
目录一、查看网络配置1.ifconfig命令-查看网络接口信息2.hostname命令-查看主机名称3.route命令-查看路由表条目二、查看网络连接情况1.nestat命令2.ss命令3.netstat命令与ss命令的区别4.lsof命令(ListOpenFiles)-列出系统中打开的文件的命令行工具三、测试网络连接1.ping命令-测试网络连通性2.traceroute-跟踪数据包的路由途径3
- Liunx最常用命令
陈恒源
1.系统命令命令帮助命令名-help查看ip地址ipaddr清屏clear重启reboot关机shutdown关闭防火墙systemctlstopfirewalld查看端口号占用情况netstat-tnlp|grep:222.文件命令创建文件touch文件名复制/剪切/删除cp/mv/rm文件名查看文件命令more/less/head/tail文件名模糊搜索grep-行号关键字文件名复制文件cp-
- 【Linux命令】进程、端口查询命令
iku!!
Linuxlinux服务器运维
1、根据进程ID查询占用的端口号netstat-nlp|grep[进程ID]2、根据端口号查询占用它的进程IDlsof-i:[端口号]或者netstat-nlp|grep[端口号]
- 10086端口占用 虚拟机vmnat.exe Windows查看端口占用
tanzongbiao
windows
10086端口占用是虚拟机的vmnat.exeWindows查看端口占用netstat-ano|findstr"10086"taskkill/f/t/im"19716"杀不掉,提示:错误:无法终止PID19716(属于PID1104子进程)的进程。查看是什么程序占用的此端口号
- 在Windows中,杀死端口占用
小丁学Java
计算机网络windows命令行windows
要杀死占用某个端口的进程,可以按照以下步骤进行操作:进程ID就是PID打开命令提示符窗口(Windows)或终端(Linux/macOS)。输入命令netstat-ano|findstr"端口号",其中“端口号”是要查找的端口号。例如,如果要查找占用端口8080的进程,可以输入netstat-ano|findstr"8080"。这个命令会列出所有占用该端口的进程及其对应的PID(进程号)。Micr
- Linux网络设置
Amrian_robot
linux网络运维
目录一、查看网络配置1.查看网络接口信息ifconfig1.1查看所以活动的网络接口信息1.2查看指定网络接口信息2.查看主机名称hostname2.1hostname命令2.2永久设置主机名3.查看路由表条目route3.1route命令二、查看网络连接情况1.查看网络连接情况netstat(即端口扫描)2.获取socket统计信息——ss2.1ss命令概述2.2ss选项2.3netstat命令
- 在网络安全中常见的windows和linux命令
阿贾克斯的黎明
网络安全笔记网络安全
Linux命令:网络扫描与监测:nmap:强大的网络扫描工具,可用于发现主机、扫描端口、确定操作系统类型等。例如,nmap-sS192.168.1.0/24进行SYN扫描一个IP网段;nmap-p80,443example.com扫描特定主机的80和443端口1。netstat:显示网络连接状态、路由表、接口统计等信息。如netstat-tuln查看正在监听的TCP和UDP端口。tcpdump:用
- Linux系统性能调优技巧
jie201107
linux
Linux系统性能调优是一个复杂的过程,涉及到多个层面的优化,包括硬件、操作系统、应用程序等。以下是一些常见的Linux系统性能调优技巧:1.**监控系统性能**:-使用工具如`top`,`htop`,`vmstat`,`iostat`,`mpstat`,`netstat`等来监控系统资源使用情况。2.**优化磁盘I/O**:-使用`noatime`挂载选项减少磁盘写入。-调整`swappines
- 如何检查端口占用:netstat和lsof指令
Mark White
服务器运维
在网络故障排查和系统管理中,检查端口占用情况是一项常见且重要的任务。本文将详细介绍如何使用netstat和lsof这两个强大的工具来检查端口占用和相关服务。1.使用netstat查看端口占用netstat(networkstatistics)是一个用于显示网络连接、路由表、接口统计等信息的命令行工具。1.1最常用的netstat命令netstat-an这是最常用的形式,让我们解析其参数:-a:显示
- 题解 | #netstat-查看和3306端口建立的连接#
2301_79125431
java
经纬恒润Java一面4.19个人情况:本硕成绩情况;学习的相关课程项目1:FFmpeg如何实现视频的处理;音视频分离和音频切片的题解|#重载小于号##includeusingnamespacestd;class笔试小公司word笔试有没有必要写[尴尬],感觉贼简单结果秒挂题解|#小招喵跑步#importsysforlineinsys.stdin:#这里面2n到达的位置应该是快速上手Postman工
- 快速删除前端vue项目的依赖
代码老祖
前端vscodevue.js
npminstallrimraf-grimrafnode_modules有些时候项目启动不在希望的端口,解除端口占用8080是被占用的端口netstat-ano|findstr:808011120是找到的进程taskkill/PID11120/F在网页创建新分支devgitremoteupdateorigin-p//更新远程分支gitbranch-a//查看所有分支gitcheckoutdev//
- Ubuntu 16.04下开启Mysql 3306端口远程访问
忘了呼吸的那只猫
前言网上看到很多开启Mysql远程访问端口,修改的配置文件我都没有找到。特意查看了我的Linux版本$sudolsb_release-a显示如下:DistributorID:UbuntuDescription:Ubuntu16.04.1LTSRelease:16.04Codename:xenial1.查看3306端口是否正常root@node1:~#netstat-an|grep3306tcp00
- 无法向会话状态服务器发出会话状态请求。请确保 ASP.NET State Service (ASP.NET 状态服务)已启动,并且客户端端口与服务器端口相同。如果服务器位于远程计算机上,请检查 ...
Allen_f58e
无法向会话状态服务器发出会话状态请求。请确保ASP.NETStateService(ASP.NET状态服务)已启动,并且客户端端口与服务器端口相同。如果服务器位于远程计算机上,请检查HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state\Parameters\AllowRemoteConnection的值,确保服务器接受远
- 【shell常用指令整理】
半夏知半秋
linuxlinux开发语言
shell常用指令整理greplessmorecatawknetstattailfheadpstopdudffindsedgrep用于在文件中搜索指定模式的内容greptrace-ctest.log:查看test.log中匹配到trace的个数greptrace-c*-l:查看所有文件中匹配到trace的文件名greptrace-C5test.log:查看test.lua中所有匹配到trace所在
- windows下用cmd命令netstat查看系统端口使用情况
wmh188
转:https://www.cnblogs.com/lvxiuquan/archive/2012/08/22/2650507.html开始--运行--cmd进入命令提示符输入netstat-ano即可看到所有连接的PID之后在任务管理器中找到这个PID所对应的程序如果任务管理器中没有PID这一项,可以在任务管理器中选"查看"-"选择列"。经常,我们在启动应用的时候发现系统需要的端口被别的程序占用,
- linux中netstat命令详解及常见用法
树下的码农
linux计算机网络
在Linux使用过程中,需要了解当前系统开放了哪些端口,并且要查看开放这些端口的具体进程和用户,可以通过netstat命令进行简单查询1.netstat命令各个参数说明-a或–all显示所有连线中的Socket。-A或–列出该网络类型连线中的相关地址。-c或–continuous持续列出网络状态。-C或–cache显示路由器配置的快取信息。-e或–extend显示网络其他相关信息。-F或–fib显
- centos7常用命令总结(不断更新中)
乌拉队长
服务器
netstat–nat查看正在监听的端口firewall-cmd--permanent--query-port=22/tcp//查看防火墙22端口启用状态yes为打开,no为关闭firewall-cmd--permant--add-port=22/tcp//为防火墙打开22端口firewall-cmd--permant--list-ports//查看防火墙所有已开启端口systemctlstopf
- 端口号被占用怎么解决
三月37
java服务器前端
1、快捷键"win+R"打开运行,在其中输入"cmd"命令,回车键打开命令提示符。2、进入窗口后,输入"netstat-ano"命令,可以用来查看所有窗口被占用的情况。比如端口号为7680的端口被占用了,我们先找到该端口号对应的PID为5168。或使用运行打开cmd,直接输入“netstat-aon|find"8080"”,回车。查看被占用端口对应的PID。3、最后输入命令"taskkill-pi
- shell脚本 curl 和 wget访问 注册自启脚本 定时任务
开过光的猫
Linuxlinux运维
curl检测项目是否启动脚本#!/bin/sh#获取中间件进程ID/opt/AAS/domainsAASService=$(netstat-nlp|grep16602|awk'{print$7}'|awk-F"/"'{print$1}')#中间件启动程序(中间件需要注意这里注意中间件实际安装的路径)StartAAS=/opt/AAS/domains/服务名/bin/startapusic#定义要监
- 【安全狐】Netstat命令详解
安全狐
网络基础DOS命令Netstat网络基础DOS命令Netstat
Netstat命令详解Netstat:在InternetRFC标准中,[Netstat是在内核中访问网络连接状态及其相关信息的程序,它能提供TCP连接,TCP和UDP监听,进程内存管理的相关报告。]Netstat是控制台命令,是一个监控TCP/IP网络的非常有用的工具,它[可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息。]Netstat用于显示与IP、TCP、UDP和ICMP协议相
- centos7 没有netstat 和 ifconfig命令问题
信仰与初衷
由于安装的centos7是最小版,运行下发现没有netstat和ifconfig命令,下面运行命令安装查找命令在哪个包里面yumsearchifconfig发现ifconfig在net-tools.x86_64里面,所以运行yuminstallnet-tools如此则OK了,其他的软件没有,也可以按照上面的方法安装
- 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