- git——git add 时报错 warning: LF will be replaced by CRLF in ** 解决办法
dbt@L
Git
输入命令:gitconfigcore.autocrlffalse(仅对当前git仓库有效)gitconfig--globalcore.autocrlffalse(全局有效,不设置推荐全局)
- git add报错 fatal: LF would be replaced by CRLF in 或 文本是相同的,但文件不匹配
时光之里
gitLF和CRLF
现象解决进入项目目录,在.git文件夹下打开config配置文件,添加上下面两句话:由于执行命令不能解决问题,我们选择手动修改,放在core里面即可autocrlf=falsesafecrlf=false
- git add . 报错 warning: LF will be replaced by CRLF in ******.vue.
慢慢雨夜
git
LF和CRLF其实都是换行符,不同的是,LF是linux和Unix系统的换行符,CRLF是window系统的换行符。git提供了一个”换行符自动转换“的功能,并且这个功能是默认处于”自动模式“即开启状态的。输入命令:gitconfigcore.autocrlffalse(仅对当前git仓库有效)gitconfig--globalcore.autocrlffalse(全局有效,不设置推荐全局)然后重
- MySQL --- 索引结构
路遥万里
MySQLmysql数据库
文章目录mysql索引索引的优缺点索引的分类索引的创建索引的数据结构B-Tree多路平衡查找树B+TreeB+树索引Hash索引面试题mysql索引索引(index)是高效获取数据的数据结构(有序)。在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据,这样就可以在这些数据结构上实现高级查找算法,这种数据结构就是索引。索引的优缺点优点:1、提高数据检索的
- mysql+索引+rebuild_MySQL如何进行索引重建操作?
驴放屁
在MySQL数据库中,没有类似于SQLServer数据库或Oracle数据库中索引重建的语法(ALTERINDEX...REBUILD),那么在MySQL数据库中,是否有什么方式重建索引呢?在官方文档中"2.11.10RebuildingorRepairingTablesorIndexes"中,提到下面三种方式可以RebuildIndex·DumpandReloadMethod·ALTERTABL
- 封装AJAX
泡杯感冒灵
Documentfunctionajax(options){varurl=options.url;vartype=options.type||'GET';vardataType=options.dataType||'json';varonsuccess=options.success||function(){};varonerror=options.error||function(){};vard
- MySQL索引(一)
IT的咸鱼
索引的本质索引(Index)是帮助MySQL高效获取数据的数据结构。提取句子主干,就可以得到索引的本质:索引是数据结构数据库查询是数据库的最主要功能之一。我们都希望查询数据的速度能尽可能的快,因此数据库系统的设计者会从查询算法的角度进行优化。最基本的查询算法当然是顺序查找(linearsearch),这种复杂度为O(n)的算法在数据量很大时显然是糟糕的,好在计算机科学的发展提供了很多更优秀的查找算
- 【GitHub项目推荐--一个轻量级 SQLite 可视化工具】【转载】
旅之灵夫
GitHub项目推荐sqlite数据库
Sqliteviz是一个轻量级SQLite可视化工具。包含功能如下:针对SQLite数据库运行SQL查询并根据结果集创建Plotly图表和数据透视表,将CSV文件导入SQLite数据库并可视化导入的数据,将结果集导出到CSV文件,管理查询并针对不同的数据库运行它们等等。地址:www.github.com/lana-k/sqliteviz
- 推荐一款神器:SQL Graphviz — 数据库结构可视化大师
宋海翌Daley
推荐一款神器:SQLGraphviz—数据库结构可视化大师sql_graphvizGeneratesgraphvizcommandstographicallydisplaytablesandshowforeignkeylinks.项目地址:https://gitcode.com/gh_mirrors/sq/sql_graphviz在数据库设计和管理中,清晰地理解表间关系至关重要。SQLGraphv
- mysql11
Markland_l
mysqlsql数据库java
MySQL的查询重写规则条件化简移除不必要的括号有时候表达式里有许多无用的括号,比如这样:((a=5ANDb=c)OR((a>c)AND(ccANDca有时候多个列之间存在等值匹配的关系,比如这样:a=bandb=candc=5这个表达式可以被简化为:a=5andb=5andc=5移除没用的条件(trivial_condition_removal)(a5或者:-a2)ASt;这个例子中的子查询是:
- Spark权威指南读书笔记(二):结构化API
kaiker
第四章结构化API概述结构化API主要指三种核心分布式集合类型API:Dataset、DataFrame、SQL表和视图DataFrame和Dataset类型DataFrame和Dataset是具有行和列的类似于数据表的集合类型Spark中的DataFrame和Dataset代表不可变的数据集合Schema定义了DataFrame的列名和类型两者比较非类型化的DataFrame和类型化的Datas
- 高省官方邀请码—高省官方邀请码是多少(团长码)
凌风导师
拼多多纸巾怎么那么便宜安全吗拼多多纸巾群怎么自己搞一个高省,佣金超高。高省,高佣领导者。高省-各大应用商城下载即可-购物领劵返利高,邀请码切记填999777,凌风高省邀请码999777,全网唯一教你技术的老师码填对码直送2皇冠总裁等级,《凌风导师125130414》送价值百万引流技术推广绝密大礼包,也可以后台联系老师进高省官方群。返利比例可达到99%,市面上那些返利APP的佣金比例普遍都在58%左
- 2020-08-20 Kettle 无法正常启动 报错:does not exist, please create it ;Unable to create the database cache
迷光
缓存数据库经验分享
当我启动etl的时候出现报错找不到指定文件Lockacquired.Settingstartlevelto100E:\data-integration\system\karaf\deploydoesnotexist,pleasecreateit.于是我进行了百度根据文章我知道是缓存文件导致的这个问题缓存文件造成的错误,只需要找到..\pdi-ce-6.0.1.0-386\data-integrat
- idea maven 打包报错 --xxxx\target\classes does not exist or is not a director --java: -source 1.5 中不支持 d
qq_38142901
编程项目管理mavenintellijidea
ideamaven打包报错--xxxx\target\classesdoesnotexistorisnotadirector--java:-source1.5中不支持diamond运算符1.xxxx\target\classesdoesnotexistorisnotadirector在buildproject之后,target会自动成,ackage仍报错;通过idea界面右侧maven,lifec
- 项目在idea中运行正常,打包jar后运行就报错Template might not exist or might not be accessible的解决方法
技术菜鸟—淡定万
SpringbootJavajavaspringmavenhtml
报错情况[http-nio-80-exec-15]ERRORo.t.TemplateEngine-[process,1136]-[THYMELEAF][http-nio-80-exec
- springboot项目打包报错“Error assembling WAR: webxml attribute is required (or pre-existing WEB-INF/web.xml
大雷!
工具类应用&工具idea项目打包springboot项目打包maven项目打包
背景手上有一个springboot项目项打成war包提供服务,遇到了如下问题,特此纪要!问题springboot项目Maven方式打包报错:"Failedtoexecutegoalorg.apache.maven.plugins:maven-war-plugin:3.3.1:war(default-war)onprojectweb-test2:ErrorassemblingWAR:webxmlat
- 2019-10-23
袁小胜
macat配置mysql集群异常1:TheslaveI/OthreadstopsbecausemasterandslavehaveequalMySQLserverUUIDs问题分析问题提示主从使用了相同的serverUUID,一个个的检查:master:slave:发现master和slave的UUID一样,问题发现。解决办法:方法一:停止从库的mysqld服务,删除他的auto.cnf文件,再启
- PaddleDetection多目标跟踪报错MCMOTEvaluator is not exist, so the MOTA will be -INF
ATM006
目标检测
ppdet.metrics.mcmot_metricsWARNING:gt_filename'{}'ofMCMOTEvaluatorisnotexist,sotheMOTAwillbe-INFPaddleDetection/ppdet/metrics/mcmot_metrics.pyclassMCMOTEvaluator(object):def__init__(self,data_root,seq
- java计算机毕业设计智能停车场管理系统源码+mysql数据库+系统+部署+lw文档
法姆利
javamysql开发语言
java计算机毕业设计智能停车场管理系统源码+mysql数据库+系统+部署+lw文档java计算机毕业设计智能停车场管理系统源码+mysql数据库+系统+部署+lw文档本源码技术栈:项目架构:B/S架构开发语言:Java语言开发软件:ideaeclipse前端技术:Layui、HTML、CSS、JS、JQuery等技术后端技术:JAVA运行环境:Win10、JDK1.8数据库:MySQL5.7/8
- python爬虫521
PUTAOAO
python爬虫开发语言
爬虫521记录记录最近想学爬虫,尝试爬取自己账号下的文章标题做个词云csdn有反爬机制原理我就不说啦大家都写了看到大家结果是加cookie但是我加了还是521报错尝试再加了referer就成功了(╹▽╹)importmatplotlibimportrequestsfromwordcloudimportWordCloudimportmatplotlib.pyplotaspltimportjieba#
- [protobuf][C++]protobuf编译报错无法解析的外部符号 google::protobuf::internal::ExplicitlyConstructed fixed_address
FL1623863129
环境配置开发语言
问题描述:编译好的protobuf3.20.0在项目中引用后运行报错:无法解析的外部符号google::protobuf::internal::ExplicitlyConstructedfixed_address解决方法:从网上查要在引用的头文件里增加#definePROTOBUF_USE_DLLS,但是编译时会报protobuf.lib的重定义错误,于是把PROTOBUF_USE_DLLS定义放
- composer install 报错Script @php artisan package:discover --ansi handling the post-autoload-dump ev...
一位先生_
composerself-update--stablecomposerupdate执行这两行代码即可
- 机器学习和深度学习中常见损失函数,包括损失函数的数学公式、推导及其在不同场景中的应用
早起星人
机器学习深度学习人工智能
目录引言什么是损失函数?常见损失函数介绍3.1均方误差(MeanSquaredError,MSE)3.2交叉熵损失(Cross-EntropyLoss)3.3平滑L1损失(SmoothL1Loss)3.4HingeLoss(合页损失)3.5二进制交叉熵损失(BinaryCross-EntropyLoss)3.6KL散度(KLDivergence)3.7Huber损失(HuberLoss)3.8对比
- mysql5.6如何配置_Mysql5.6 参数常见配置 和 范本配置
陈语岚
mysql5.6如何配置
#以下选项会被MySQL客户端应用读取。#注意只有MySQL附带的客户端应用程序保证可以读取这段内容。#如果你想你自己的MySQL应用程序获取这些值。#需要在MySQL客户端库初始化的时候指定这些选项。#[client]#password=[your_password]port=3306socket=/usr/local/mysql/mysql.sock#***应用定制选项***##MySQL服务
- 书店销售内部后台管理系统员工信息部门图书入库账目集成分析销售客户
计算机程序设计开发
java课程设计计算机毕业设计javaspringboot
本系统的设计实施为书店管理系统的运行做基础,为书店的管理提供良好的条件。系统主要实现了:员工信息管理、部门管理、图书管理、入库管理、账目集成分析、销售管理、客户管理。2.1系统开发工具本系统主要使用JSP技术对系统进行设计和开发。JSP拥有Java程序设计语言“一次编写,各处执行”、“安全性、保密性高”等的特点[13];使用MYSQL数据库作为后台数据库,MYSQL系统具有强大的网上功能,可以在互
- yii2自动跳转登陆 ie低版本无效
飞狐or
ie低版本访问yii2框架yii2初始化配置phpyii2后端
Yii2ie低版本访问登陆页面报错如图不能自行跳转到登陆界面如图不能自行跳转到登陆界面查找原因Yii2默认验证请求头类型为public$acceptableRedirectTypes=['text/html','application/xhtml+xml'];ie低版本请求头内容类型为'application/x-ms-application'将ie请求类型增加到yii2\web\user.php
- JSP/JAVAWEB/SSM/J2EE高考志愿填报推荐系统的开发
计算机程序设计开发
javamysqljavawebssm推荐系统
目录1、概述2、功能描述3、数据表4、目录结构5、实现过程5.1SRC目录5.2webroot前端文件6、最终效果6.1前台用户效果6.2后台管理员用户效果1、概述开发环境:jdk1.8、tomcat7.0、mysql5.2开发工具:idea2019.3.1、navicat15编程语言后端:java;框架和引用的包:JavaBeanServletMVC、log4j.jar编程语言前端:JSP、ht
- Python分布式任务处理库之dramatiq使用详解
Rocky006
python开发语言
概要在现代Web应用和数据处理任务中,异步任务处理是一个至关重要的部分。Dramatiq是一个用于分布式任务处理的Python库,旨在提供简单、可靠的任务队列解决方案。与其他任务队列库相比,Dramatiq更加轻量级,且易于上手。它的设计目标是帮助开发者轻松地将耗时的任务放到后台处理,从而提升应用程序的响应速度。本文将详细介绍Dramatiq库,包括其安装方法、主要特性、基本和高级功能,以及实际应
- 全局异常处理
原谅我很悲
#Java项目总结java
全局异常处理1、减少try…catch2、统一处理注解的message1、响应结果枚举packagecom.zhw.enums;@SuppressWarnings("all")publicenumAppHttpCodeEnum{//成功SUCCESS(200,"操作成功"),//登录PARAM_ERROR(400,"接口参数异常"),NEED_LOGIN(401,"需要登录后操作"),NO_OPE
- mysql安全机制
name_cc2f
权限级别查看权限记录表查看权限记录表1查看权限记录表2mysql用户管理:创建用户方法一、CREATEUSERuser1@'localhost'IDENTIFIEDBY'QianFeng@123456';验证:select*frommysql.user\G;方法二、GRANTALLON*.*TO'user3'@'localhost'IDENTIFIEDBY'QianFeng@123456';验证:
- 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