- 20. TaskExecutor与ResourceManager心跳
csgo打的菜又爱玩
flink开发语言java大数据
20.TaskExecutor与ResourceManager心跳现在,需要回过头看ResourceManager是如何产生心跳管理服务的。cluster.initializeServices方法的heartbeatServices=createHeartbeatServices(configuration);产生一个HeartbeatServicesImpljobmanager的resource
- 学习笔记(33):matplotlib绘制简单图表-绘制混淆矩阵热图
宁儿数据安全
#机器学习学习笔记matplotlib
学习笔记(33):matplotlib绘制简单图表-绘制混淆矩阵热图一、绘制混淆矩阵热图代码解析1.1、导入必要的库importmatplotlib.pyplotaspltfromsklearn.metricsimportconfusion_matriximportseabornassnsmatplotlib.pyplot:Python中最常用的绘图库,用于创建各种图表confusion_matr
- 3.多层感知机
温柔济沧海
深度学习深度学习人工智能多层感知机
3.1从零实现多层感知机#数据集导入importtorchimporttorchvisionfromtorchvisionimporttransformsimportmatplotlib.pyplotaspltfromtorch.utils.dataimportDataLoaderfromtorchimportnnfromtqdmimporttqdmfromsklearn.metricsimpor
- 游戏可观测性:如何打造稳定高效的后台服务
你一身傲骨怎能输
游戏开发技术专栏可观测性
游戏服务可观测性能力建设摘要游戏服务的可观测性建设是保障稳定运营和高效排障的关键。现代游戏采用分布式架构,需要通过指标(Metrics)、日志(Logs)、追踪(Traces)三大支柱实现系统监控。核心能力包括:指标监控:系统资源、服务性能、业务数据日志分析:访问日志、业务日志、异常日志链路追踪:跨服务调用追踪和业务流程跟踪告警与可视化:实时告警、仪表盘、根因分析技术方案建议:指标采集:Prome
- 陈强《计量经济学及Stata应用》学习笔记——持续更新
WangSoooCute
学习笔记
1导论1.1什么是计量经济学econometrics几种关系:相关关系、因果关系、逆向因果关系reversecausality、双向因果关系被解释变量dependentvariable解释变量explanatoryvariable=regressor=自变量independentvariable=协变量covariateunobservable的误差项errorterm=随机扰动项stochast
- 使用AutoKeras2.0的AutoModel进行结构化数据回归预测
1、FirstofAll:ReadTheFuckingSourceCodeimportautokerasasakimportnumpyasnpfromsklearn.model_selectionimporttrain_test_splitfromsklearn.metricsimportmean_squared_error#生成数据集np.random.seed(42)x=np.random.r
- 百度7天GNN学习-图与图学习中
静静喜欢大白
pgl
目录1链接预测分析图学习的主要任务链接预测(Linkprediction)1.相似度分数2.性能指标(Performancemetrics)完整代码输出2节点标记预测分析完整代码输出3图嵌入图嵌入(GraphEmbedding)1.节点嵌入(NodeEmbedding)2.边嵌入(EdgeEmbedding)3.图嵌入(GraphEmbedding)完整代码输出小结小结参考1链接预测分析图学习的
- 文心4.5开源模型部署实践
skywalk8163
人工智能文心人工智能文心大模型开源大模型文心开源
文心4.5开源模型部署实践使用fastdeploy本地部署执行命令:python-mfastdeploy.entrypoints.openai.api_server\ --modelbaidu/ERNIE-4.5-21B-A3B-Paddle\ --port8180\ --metrics-port8181\ --engine-worker-queue-port8182\ --max-model-l
- 大数据系列 | 日志数据采集工具Filebeat的架构分析及应用
降世神童
大数据技术专栏大数据架构
大数据系列|日志数据采集工具Filebeat的架构分析及应用1.Filebeat的由来2.Filebeat原理架构分析3.Filebeat的应用3.1.安装Filebeat3.2.实战采集应用程序日志1.Filebeat的由来 在介绍Filebeat之前,先介绍一下Beats。Beats是一个家族的统称,Beats家族有8个成员,早期的ELK架构中使用Logstash收集、解析日志,但是Logs
- android15 锁屏灭屏 去掉指纹解锁动画效果
鹏程万里_user
Androidandroid
锁屏灭屏状态下,指纹解锁时,去掉指纹解锁动画效果(这个动画效果是android原生设计)frameworks/base/packages/SystemUI/src/com/android/systemui/biometrics/AuthRippleController.ktprivatefunshowUnlockRippleInternal(biometricSourceType:Biometri
- 【YOLOv11】ultralytics最新作品yolov11 AND 模型的训练、推理、验证、导出 以及 使用
Jackilina_Stone
#DeepLearning【改进】YOLO系列YOLO人工智能python计算机视觉深度学习
目录一ultralytics公司的最新作品YOLOV111yolov11的创新2安装YOLOv113PYTHONGuide二训练三验证四推理五导出模型六使用文档:https://docs.ultralytics.com/models/yolo11/代码链接:https://github.com/ultralytics/ultralyticsPerformanceMetrics
- YOLOv12_ultralytics-8.3.145_2025_5_27部分代码阅读笔记-metrics.py
红色的山茶花
YOLO笔记深度学习
metrics.pyultralytics\utils\metrics.py目录metrics.py1.所需的库和模块2.defbbox_ioa(box1:np.ndarray,box2:np.ndarray,iou:bool=False,eps:float=1e-7)->np.ndarray:3.defbox_iou(box1:torch.Tensor,box2:torch.Tensor,eps
- 【无标题】
FAUNAAAAAA
cocoa
Day55importnumpyasnpimportmatplotlib.pyplotaspltfromsklearn.preprocessingimportMinMaxScalerfromsklearn.ensembleimportRandomForestRegressorfromsklearn.metricsimportmean_squared_error#==================
- 【翻译】多标签分类评价指标metrices multi-label classification
surrender2u
NLP自然语言处理
翻译日期:2020-05-15翻译来源:LohithmunakalaAug28,2020MetricsforMulti-LabelClassification原地址:https://medium.com/analytics-vidhya/metrics-for-multi-label-classification-49cc5aeba1c3删减版本正文:用于多标签分类的最常见指标如下:Precisi
- Python打卡:Day24
剑桥折刀s
python打卡python
importpandasaspdimportnumpyasnpimportreimportxgboostasxgbfromsklearn.model_selectionimporttrain_test_splitfromsklearn.metricsimportclassification_report,confusion_matrix,accuracy_score,precision_score
- 【Kubernetes】Kubernetes 集群开启 Metrics-Server
陈陈CHENCHEN
Kuberneteskubernetes
Metrics-Server是Kubernetes集群中的一个核心组件,负责收集和聚合集群中节点和Pod的资源使用指标(如CPU和内存使用情况),这些指标对于集群自动扩缩容(如HPA)和集群监控至关重要,一起来看看如何开启吧!1、主要功能资源监控:收集节点和Pod的CPU、内存使用情况指标聚合:将原始指标数据聚合为可用的API格式API提供:通过KubernetesMetricsAPI提供指标数据
- 【读代码】深入解析Ragas:RAG应用效果评估最好的工具
kakaZhui
大模型实践之知识库RAGLLMAgent人工智能AIGCRAGRagas
一、基本介绍Ragas是由ExplodingGradients团队开发的专业LLM应用评估框架,通过自动化测试和量化指标帮助开发者构建可靠的AI系统。项目采用模块化架构设计,核心功能包括:#典型架构模块├──metrics#50+评估指标实现├──testset#测试集生成系统├──embeddings#多模态嵌入支持├──integrations#主流框架集成├──optimizers#遗传算法
- YACE:强大的AWS CloudWatch Prometheus Exporter
滕骅照Fitzgerald
YACE:强大的AWSCloudWatchPrometheusExporteryet-another-cloudwatch-exporterPrometheusexporterforAWSCloudWatch-DiscoversservicesthroughAWStags,getsCloudWatchmetricsdataandprovidesthemasPrometheusmetricswith
- 输入GSM8K数据集对Llama2-int4模型进行性能评估
Nnbwbyhxy
语言模型
思路:逐条输入GSM8K数据集获得模型输出并于数据集中的回答进行比对fromllama_cppimportLlama#从llama_cpp导入Llama类,用于加载并调用Llama模型importtime#导入time模块用于时间测量importpandasaspd#导入pandas用于数据处理,尤其是读取和操作Parquet文件fromsklearn.metricsimportaccuracy_
- 【对比】DeepAR 和 N-Beats
TIM老师
时序预测
1.DeepAR1.1核心思想提出者:亚马逊(Amazon)团队于2018年提出。目标:针对多变量时间序列进行概率预测(ProbabilisticForecasting),输出预测值的分布(如均值、方差、置信区间),而非单一确定性预测。适用场景:适用于具有多变量、多目标的时间序列预测任务(如零售销售预测、能源负荷预测)。1.2模型结构RNN架构:基于长短时记忆网络(LSTM)或门控循环单元(GRU
- Qt 中实现文本截断(ellipsis)的功能。Qt 提供了此方法来处理过长的文本显示问题,例如在界面中限制文本长度并添加省略号(...)
QElidedText并不是Qt中的标准类名或功能名称,但根据你的描述,你可能是指QFontMetrics::elidedText()方法。这是一个用于在Qt中实现文本截断(ellipsis)的功能。Qt提供了此方法来处理过长的文本显示问题,例如在界面中限制文本长度并添加省略号(…)。以下是关于QFontMetrics::elidedText()的详细说明:1.基本概念作用:将超出指定宽度的文本截
- 关于metrics.classification_report报告中指标解读
junjunzai123
人工智能
函数的应用主要是对类目分类相关的业务做评测使用主要介绍一下:macroavg和weightedavg区别指标解释1.macroavg(宏平均)定义:对每个类别的指标(如精确率、召回率、F1-score)取算术平均值,不考虑类别样本数量。计算公式:macro_avg=(指标_类别1+指标_类别2+...+指标_类别N)/N特点:平等对待每个类别:无论类别样本数量多少,每个类别的权重相同。适用场景:当
- sklearn.metrics.classification_report函数使用异常情况
junjunzai123
机器学习算法sklearn机器学习python
报错信息ValueError:Numberofclasses,140,doesnotmatchsizeoftarget_names,142.Tryspecifyingthelabelsparameter函数介绍多分类任务评估指标生成工具,指标如Precision,Recall,F1函数参数sklearn.metrics.classification_report(y_true,y_pred,lab
- 6.Netty UDP客户端搭建(UdpClient),UdpClient生命周期回调,连接配置,Metrics(指标监控)
未禾
Nettyudpjavanetty
目录Netty专栏目录(点击进入…)NettyUDP客户端(UdpClient)ReactorNetty提供了易于使用和易于配置的UdpClient。它隐藏了创建UDP客户端所需的大部分Netty功能,并添加了ReactiveStreams背压(ReactiveStreams是具有无阻塞背压的异步流处理的标准)连接和断开要将UDP客户端连接到给定端点,必须创建和配置UdpClient实例默认情况下
- k8s监控方案实践补充(二):使用kube-state-metrics获取资源状态指标
hwj运维之路
kubernetes容器prometheus
k8s监控方案实践补充(二):使用kube-state-metrics获取资源状态指标文章目录k8s监控方案实践补充(二):使用kube-state-metrics获取资源状态指标一、MetricsServer简介二、kube-state-metrics实战部署1.创建RBAC(kube-state-metrics-rbac.yaml)2.创建Service(kube-state-metrics-
- ELK日志采集系统
UFIT
服务器nginx运维
ELK日志采集系统指的是由Elasticsearch、Logstash和Kibana三个核心开源软件组成的套件,用于集中式日志的采集、处理、存储、搜索、分析和可视化。它现在更常被称为ElasticStack,因为其组件生态已经扩展(尤其是引入了Beats)。以下是ELK系统的核心组件和工作流程详解:数据源(DataSources)任何产生日志或事件的应用、系统或设备。例如:Web服务器日志(Ngi
- Python日志分析:使用ELK堆栈处理大规模日志数据
Python编程之道
Python人工智能与大数据Python编程之道pythonelkjenkinsai
Python日志分析:使用ELK堆栈处理大规模日志数据关键词:Python日志分析、ELK堆栈、Logstash、Elasticsearch、Kibana、Beats、大规模日志处理摘要:本文以“如何用ELK堆栈处理大规模日志数据”为核心,结合Python日志生成与分析场景,用通俗易懂的语言解释Elasticsearch(存储)、Logstash(处理)、Kibana(可视化)和Beats(采集)
- 日志收集工具-logstash
QD.Joker
#ELK数据库elk
提示:Windows环境下安装部署logstash采集日志文件文章目录一、下载二、解压部署三、常用插件四、常用配置Logstash服务器数据处理管道,能够从多个来源采集数据,转换数据,然后将数据发送到您最喜欢的存储库中。Logstash没有fileBeats轻量,但是过滤功能更多。一、下载官网下载安装windows压缩包:https://www.elastic.co/cn/downloads/lo
- python第十五天打卡
复习基准模型fromsklearn.ensembleimportRandomForestClassifier#随机森林分类器fromsklearn.metricsimportaccuracy_score,precision_score,recall_score,f1_score#用于评估分类器性能的指标fromsklearn.metricsimportclassification_report,c
- Spring boot应用监控集成
GeminiJM
prometheusdocker容器运维
SpringBoot应用监控集成记录背景XScholar文献下载应用基于SpringBoot构建,需要接入Prometheus监控系统。应用已部署并运行在服务器上,需要暴露metrics端点供Prometheus采集。初始状态应用信息框架:SpringBoot2.x部署端口:10089服务器:Linux服务器(IPv4/IPv6双栈网络)Prometheus:Docker容器部署已有依赖项目中已包
- 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