- 标定系列——基于OpenCV实现普通相机、鱼眼相机不同标定板下的标定(五)
JANGHIGH
标定opencv
标定系列——基于OpenCV实现相机标定(五)说明代码解析VID5.xmlin_VID5.xmlcamera_calibration.cpp说明该程序可以实现多种标定板的相机标定工作代码解析VID5.xmlimages/CameraCalibration/VID5/xx1.jpgimages/CameraCalibration/VID5/xx2.jpgimages/CameraCalibratio
- git删除之前所有的commit信息
fightingwy
gitgithub
拉取代码gitclone-bmasterurlgitcheckout--orphanorphan创建一个无父节点的branchgitmerge合并主分支的目前在孤儿分支上接着gitadd.gitcommit-m“xxx”gitswitchmastergitreset--hardorphan将masterreset到跟new一样的位置gitpush--force-with-leaseoriginma
- java selenium 元素点击不了
马达马达达
selenium测试工具
最近做了一个页面爬取,很有意思被机缘巧合下解决了。这个元素很奇怪,用xpath可以定位元素,但是就是click()不了。试过了网上搜的一些办法://尝试一WebElementa_tag=driver.findElement(By.xpath("xxx"));a_tag.click();//点击不了,卡住//尝试二WebDriverWaitwait=newWebDriverWait(driver,1
- IDEA显示Cannot resolve symbol XXX
醉书生ꦿ℘゜এ
javaJavaScriptjsintellijidea
解决方法:File-->InvalidateCaches/Restart-->InvalidateandRestart
- k8s kubectl 常用命令
_Johnny_
kuberneteskuberneteslinux容器
查询节点nodekubectlgetnode查询节点标签kubectlgetnode--show-labels查询所有podkubectlgetpod-A查询指定命名空间下的podkubectlgetpod-nproject-3428查询pod详细kubectl-nproject-3428getpodxxxxxxxxxxxx-owidePOD打标签kubectllabelpodmypodapp=w
- 常见HTTP状态码总结
Gv_ee
http网络协议网络
常见HTTP状态码总结2XX表示请求被正常处理了3XX表示浏览器需要执行某些特殊处理来正确处理请求4XX表示客户端错误5XX表示服务器本身出现错误2XX表示请求被正常处理了200:正常返回204:请求成功,但是没有数据返回206:表示客户端进行了范围请求,服务器执行了这部分的请求3XX表示浏览器需要执行某些特殊处理来正确处理请求301:永久重定向,表明请求得资源已经分配了新的URL,以后使用新的U
- STM32 LL库 定时器捕获NEC红外解码
xiaoqi976633690
stm32嵌入式硬件单片机
/*USERCODEBEGINHeader*//*********************************************************************************@filestm32f1xx_it.c*@briefInterruptServiceRoutines.********************************************
- chatgpt赋能python:Python编写一元二次方程公式
pythonxxoo
ChatGptchatgptpython人工智能计算机
Python编写一元二次方程公式在数学中,一元二次方程是指形如ax2+bx+c=0ax^2+bx+c=0ax2+bx+c=0的方程,其中xxx为未知数,a,b,ca,b,ca,b,c为已知常数,且a≠0a\neq0a=0。本文将介绍如何使用Python编写一元二次方程的解法公式。介绍公式推导要求一元二次方程ax2+bx+c=0ax^2+bx+c=0ax2+bx+c=0的解,根据求根公式:x=−b
- windows服务器上部署Java项目
new Project
windows服务器java
1.首先把jdk数据库等项目运行环境在服务器上搭建起来2.部署项目需要4个文件如下图3.添加xxx.bat文件,这个文件用于在服务器服务中新增一个服务,文件内容下面代码中需要修改的内容:sccreate新增的服务名称binPath=xxx.exe文件的路径
[email protected]"%SystemDrive%\SystemV
- 贴吧霸屏是什么意思?百度贴吧霸屏怎么做
九千营销
你说贴吧霸屏是什么意思?商务合作加Q28110454微信yisi221其实,归根结底是做一些用户搜索相关的长尾词,然后用原文收录,这样会有很大的机会被展示出来。怎么做?让我们看看一、我们需要制作一个标题的两三个流行关键字相关的特定主题。总标题的字数应控制在25字左右。例如,我们可以设置这样的标题。什么是XXX?XXX可靠吗?XXX是怎么赚钱的?三个相关的词组成一个标题。商务合作加Q28110454
- (五)
夏所珍创作室
有公务员……研究生……本科……。宗族夏氏xx代赵氏xx代,这几姓家族都修有家谱、族谱,但多为手抄本,由族长和长房保存。每到清朋祭祖,族人聚在一起敬香、填坟、烧纸,集中“吃家祖饭”甚是热闹。有具体明细更好。村民办厂或在外办公司的明细。如兴化市楚水锌厂董玉旺,……。传说笑话……流行的谚语和歇后语……八派命不怕死做,把戏人人会做,各有巧妙不同。
- 编写Linux内核模块实现文件拷贝
双珵
linux
经评论区反馈:如果Linux内核版本为4.XX,那么需要在vfs_read和vfs_write的地方更改为kernel_read和kernel_write操作系统课程实验1添加内核模块每个人题目都是自己选择的,题目1已经有一位校友给出了标准答案,我捣鼓的是文件拷贝这题,弄了很久也记录一下,给后面的学弟学妹参考题目4:设计一个带参数的模块,其参数为源文件和目标文件的文件名(可能带路径),模块功能是实
- 有未补充的信息,强制补充 vue
暴富暴富暴富啦啦啦
前端javascript数据库
当有未补充的信息时,登录进来要提醒补充信息,跳转到相应页面之后,无论点击什么都提示补充弹框(包括刷新时)方法:1.登录成功,将需要填写的字段存在本地或vuex中localStorage.setItem('xxx',值)2.登录进来之后,根据存在本地的字段判断是否需要弹框提示(引用全局弹框)3.找到侧边栏和页签所在,做个点击事件,如果有未补充的字段,则弹框提示localStorage.getItem
- jsp中${xxx}代表什么
不腾
jsp
jsp中${}----是EL表达式的常规表示方式目的是为了获取{}中指定的对象(参数、对象等)的值如:${user.name}Useruser=(User)request(搜寻范围).getAttribute(user);Stringname=user.getName();out.println(name);从当前页面起开始搜寻user对象,然后获取改对象的name属性值其搜寻的范围依次是:pag
- mysql数据导出、导入
皮不动
#mysqlmysql数据库
导出数据select*INTOOUTFILE'/xxx/mysql_export.csv'FIELDSTERMINATEDBY','ENCLOSEDBY'"'LINESTERMINATEDBY'\n'FROMhal;INTOOUTFILE'':将查询结果输出到指定文件路径FIELDSTERMINATEDBY',':指定字段(或列)间的分隔符为逗号(,)ENCLOSEDBY'"':指定每个字段值应该
- QT进阶---------pro项目文件中的常用命令 (第三天)
锦亦之2233
QT进阶qt开发语言c++
1、命令一决定exe可执行程序的生成路径CONFIG作用:不使用默认路径,方便移植CONFIG(debug,debug|release){DESTDIR=$$_PRO_FILE_PWD_/../../../debugXXXsystem}else{DESTDIR=$$_PRO_FILE_PWD_/../../../realeaseXXXsystem}是用于Qt项目的配置管理,其中涉及到了Qt的构建系
- uni-app微信小程序上拉加载,下拉刷新
Min_nna
小程序uni-app微信小程序前端
pages.json配置官网链接onPullDownRefresh、onReachBottom函数跟生命周期同级data(){return{orderList:[],total:null,//总共多少条数据page:1,pageSize:10,}},onLoad(){},mounted(){this.getInfo()},methods:{getInfo(){API.getListxxx().th
- 解决Connection to Xxx@localhost failed.
zXuan
解决:Connectiontojianshu@localhostfailed.[08001]Couldnotcreateconnectiontodatabaseserver.Attemptedreconnect3times.Givingup.原因2019最新版本IDEA,Pycharm连接JDBC方式为Mysql6中的com.mysql.cj.jdbc.Driver,这个方法需要指定时区【serv
- Ubuntu20安装最新nodejs
呵呵你真行
系统集成node.jsnpmjavascript后端ubuntu
由于Ubuntu20通过apt安装nodejs默认只能到10.xxx版本。最新版本的话需要通过二进制或者源码安装,源码安装需要进行编译耗时较长,本文主要介绍二进制文件安装方法。具体步骤如下:(1)在该目录下找到最新的node版本:https://nodejs.org/dist(2)选择该改机器支持的版本(截止本文章发表前,nodejs最新版本是14.16.1)(3)通过以下命令下载wgethttp
- 不想来北京的人谈论北京的样子,就像在谈论南极北极珠穆朗玛峰
左小丘丘故事机
支付宝告诉我:我在北京市朝阳区排名第XXXX名,超过全国XX%的用户。不是诧异于我在过去的这一年花了多少钱,因为本身就是个入不敷出的篓子。但是谁告诉你,我在北京待的5个月,比不上在太原待的那6个月?你凭什么认为这5个月就决定了我这一年的总结里就只有北京?妈的,你说的没错。如果这一年还有什么可以拿出来津津乐道的事,那可能就是北漂了。马上半年过去了,我竟然还在北京。一个只要谈起来,就会有人龇牙咧嘴发出
- Spring(23) JdbcTemplate 使用简介
ACGkaka_
Springspring数据库java
目录一、简介二、使用介绍2.1Maven信息2.2配置数据源2.3JdbcTemplate使用1)execute()方法2)update()方法3)queryXxx()方法一、简介背景:JDBC已经能够满足大部分用户最基本的需求,但是在使用JDBC时,必须自己来管理数据库资源,例如:获取PreparedStatement、设置SQL语句参数、关闭连接等步骤。定义:JdbcTemplate是Spri
- vue3 效率提升神器,howuse/axios 入坑指南
一个橙子pro
vuevue3howusevue
在项目当中大量使用axios,我一般会创建一个request.js文件。接着在项目src文件夹下面创建api文件夹。大致的代码如下。//封装constservice=axios.create({baseURL:'/',headers:{}})//api文件定义exportconstxxxType=(params:any)=>service({url:"/xxx/types",method:"get
- 客户端向服务端传参5个方式
xh的世界
chrome前端http后端安全
/***get:parmas方式例子:/:id*get:query方式例子:/home?name=xxx&age=xxx*get:json方式例子:{"name":"xxx","age":"xxx"}*post:x-www-form-urlencoded方式例子:name=xxx&age=xxx*post:from-data方式*/告知编码方式后,服务器再进行解码HTTP数据编码方式HTTP数据编
- Error response from daemon: driver failed programming external connectivity on endpoint.......
桃花坞生动的芒果
报错解决docker容器
问题:安装redis,进行启动服务错误:Errorresponsefromdaemon:driverfailedprogrammingexternalconnectivityonendpointXXX(端口映射或启动容器时报错)原因:这个错误消息通常与Docker相关,意味着在尝试与外部连接建立联系时出现了问题。这可能是由于端口冲突或端口已被其他应用程序占用导致的。要解决这个问题,您可以尝试以下步
- 2019-04-19
AliceGYY
线性函数Y=0.8567+0.516XX称为自变量,也就是自己会变化的量。Y称作因变量,也就是因为X变化而引起变化的量。线性回归,能够用来探索多个变量与另一个变量之间的线性关系。weka、SPSS软件实现编程。
- 向ChatGPT高效提问模板
淘宝帝国
大数据人工智能
PS:ChatGPT无限次数,无需魔法,登录即可使用,网页打开下面tj4.mnsfdx.net[点击跳转链接](http://tj4.mnsfdx.net/)我想请你XXXX,请问我应该如何向你提问才能得到最满意的答案,请提供全面、详细的建议,针对每一个建议请你提供具体的提问范例,注意这些范例都是关于如何向你提问获取做这件事的建议的,最后根据你所有的建议,再综合提供一个总的提问范例,注意这个范例必
- 《高效能人士的七个习惯》阅读心得
沐琋
《高效能人士的七个习惯》是我跟小伙伴们约好本周共读的一本书,也是很早就听说的一本畅销书,不过在我印象中XX的几个习惯之类的书都是鸡汤类的,对这个名字比较抗拒。巧合的是最近听了好几个朋友再推荐这本书,刚好小伙伴们也在读,就跟大家一起读了。开始读书后才发现这是一本被名字耽误的书,至少对我来说是这样。哈哈。其中谈到的好多个地方都让我产生了共鸣,比如,将问题分为三类:直接控制、间接控制、无法控制,分别通过
- Redis内存淘汰策略
爱码的嘉
Redisredis内存淘汰策略
Redis的内存淘汰策略是指在内存使用达到上限时,Redis会选择性地删除一些键以回收内存。Redis的过期与淘汰策略是它作为一种高性能缓存和数据存储的关键特性之一。这些策略帮助Redis管理存储在内存中的数据,以确保内存资源得以有效利用,同时保持数据的实效性。管理数据的生命周期设置过期时间Redis允许你为每个键设置一个过期时间EXPIREkeyseconds[NX|XX|GT|LT](Time
- 【已解决】java.lang.IllegalStateException: Only fullscreen opaque activities can request orientation
badme
AndroidJavajavaandroid
一、开发现场:开发中使用activity作为二级界面弹出,且设置了透明主题二,崩溃日志:Causedby:java.lang.IllegalStateException:Onlyfullscreenopaqueactivitiescanrequestorientationatandroid.app.Activity.onCreate(Activity.java:986)atcom.xx.xxx.x
- 【ArkUI】常用组件
田本初123
#ArkTSHarmonyharmonyos
Image组件参数类型Image(src:string|PixelMap|Resource)String格式通常用来加载网络图片,需要申请网络访问权限:ohos.permission.INTERNETImage('https://xxx.png')PixelMap格式「较少使用」可以加载像素图,通常用在图片编辑中Image(PixelMapObject)Resource格式「推荐使用」加载本地图片
- 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