- spring boot 之 集成 druid数据库连接池
我叫晨曦啊
springbootspringboot数据库后端
springboot版本:2.3.12.RELEASEMySQL版本:8.0Druid简介Druid是阿里开源的一个数据库连接池和SQL查询优化工具,用于提高应用程序对数据库的性能和可扩展性。主要提供的功能:数据库连接池、数据库连接池监控、SQL查询优化、数据源管理、防御SQL注入、统计和监控。引入pom依赖com.alibabadruid-spring-boot-starter1.2.16com
- 【Spring Boot】HikariCP 连接池 YAML 配置详解
文章目录一、HikariCPYAML配置详解基础配置高级配置数据库特定配置MySQL优化配置PostgreSQL优化配置生产环境推荐配置配置说明与优化建议常见问题解决二、拓展1、什么是MySQL8小时问题问题本质解决方案1.调整MySQL配置(不推荐)2.优化连接池配置(推荐)HikariCP配置方案:Druid配置方案:3.最佳实践组合问题验证方法其他注意事项一、HikariCPYAML配置详解
- 【Spring Boot】主从数据库 - 初探
ladymorgana
日常工作总结springboot数据库后端主从数据库
文章目录一、何时需要开启从数据库主要开启场景配置建议其他考虑因素最佳实践二、SpringBoot中使用Druid开启从库的表同步问题主从同步机制可能出现的问题解决方案1.初始设置主从同步2.确保表结构一致3.SpringBoot中的容错配置最佳实践一、何时需要开启从数据库开启从数据库(读写分离)通常基于以下几个方面的考虑:主要开启场景高读取负载场景当您的应用读取操作(QPS)远高于写入操作时(如8
- ChatGPT + GitHub Copilot + Cursor 实战提升编程效率
本文将详细分享我如何组合使用ChatGPT、GitHubCopilot、Cursor等AI工具,从需求分析到代码实现,从调试优化到部署上线的完整实战经验。AI工具选择与配置核心工具栈ChatGPT-4:需求分析、架构设计、代码审查GitHubCopilot:实时代码补全、函数生成Cursor:AI驱动的代码编辑器Claude:复杂逻辑分析、文档生成Midjourney:UI设计原型生成环境配置#G
- 百度识图API
weixin_34191845
pythonpostman
http://stu.baidu.com/http://www.360doc.com/content/14/0801/17/21412_398653199.shtmlhttp://download.csdn.net/download/namelijian/3449001http://icodon.com/reverse-image-search.htmlhttp://www.cnblogs.com
- 牛客题解 | 数组中的逆序对
wc529065
牛客面试必刷101题单题解算法排序算法数据结构算法力扣面试
题目题目链接#描述这是一篇针对初学者的题解。讲述了如何从归并排序的思想到解决本题。知识点:递归难度:二星#题解题目描述:给定一个数组arr,数组元素各不相同,求arr[i]>arr[j]且idata){intret=0;intn=data.size();for(inti=0;i<n;++i){for(intj=i+1;j<n;++j){if(data[i]>data[j]){re
- 百度一下,你就知道
simplehumn
JSP/JS百度F#HTML
无意中看到百度的源代码,就粘过来了原地址:[url]http://www.baidu.com/search/freecode.html[/url]functiongowhere1(formname){varurl;if(formname.myselectvalue.value=="0"){url="http://www.baidu.com/baidu";document.search_form1.
- 判断星期几
zhuiQiuMX
java
今天看见一个很有意思的题目。大致是,已知1970年1月1日为星期四,判断某天是星期几。一开始想简单了,没有把1970到输入的年份中间的算进去。后来改好了。觉得自己的思路还行,就粘出来publicstaticvoidmain(String[]args){ZWLTzwlt=newZWLT();//星期五System.out.println(zwlt.t2(1970,1,2));//星期六System.
- 零基础学python张志强pdf_零基础学Python
weixin_39707725
前言第一篇Python语言基础第1章进入Python的世界1.1Python的由来1.2Python的特色1.3第一个Python程序1.4搭建开发环境1.4.1Python的下载和安装1.4.2交互式命令行的使用1.5Python的开发工具1.5.1PyCharm的使用1.5.2EclipseIDE的介绍1.5.3EditPlus编辑器环境的配置1.6不同平台下的Python1.7小结1.8习题
- java练习3
随机生成20个数字(随机种子)分别使用冒泡排序、二叉树排序、插入排序进行排序并输出最终结果以及三种排序使用的时间packagea01_第一次练习.a03_排序;importjava.time.Duration;importjava.time.LocalDateTime;importjava.util.TreeSet;publicclassTest{publicstaticvoidmain(Stri
- 尚硅谷-javaweb笔记记录
java成长之旅
javaweb
Javaweb笔记网页三组成:内容html,表现css,行为js。html,css,javascriptstyle标签定义css样式代码(只能在一个页面公用css样式)css文件id选择器:#id001{}#id002{}使用:标签1class选择器:.class001{}使用:类选择器组合选择器:选择器1,选择器2…{属性:值;}js里编写或者写完了再引入进去。且运算&&:当表达式为全真,返回最
- Android Binder与AIDL与Service使用案例及分析
曹小满2579
Android基础androidbinderAndroidIPC
水一篇以前写的文章Binder是Android内置的一种比较高效的跨进程机制,它很复杂,也很好用,可以让我们像调用普通方法那样完成跨进程式方法调用和数据传递。我们现在只需要知道它比较复杂以及怎么使用即可。ALDL全名AndroidinterfaceDefinitionLanguage,是Android官方提供的简化Binder开发的工具,适用于Java、Kotlin开发。所以很明显了,ALDL是小
- javase实操(二)-酒店管理系统
付朝鲜
javajava
一、题目使用二维数组实现酒店管理系统。功能如下:1.查看酒店所有房间的状态2.预定房间3.退房4.退出系统二、程序1.Hotel.javapackageHotel;publicclassHotel{privateintid;privateStringstandard;privateStringstatus;publicHotel(){}publicHotel(intid,Stringstandar
- HarmonyOS-ArkUI 手势系列4--多层级手势
曹小满2579
HarmonyOS学习笔记HarmonyOSharmonyos华为ArkUIArkTs
HarmonyOS-ArkUI手势系列1--API分析及使用方式及示例-CSDN博客HarmonyOS-ArkUI手势系列2--单一手势(长按,拖拽,滑动,旋转,捏合)-CSDN博客HarmonyOS-ArkUI手势系列3--组合手势-CSDN博客什么是多层级手势就是父容器和子组件都有手势监听的情况,叫做多层级手势。VSAndroid如果您没有Android研发经验,可以略过此处。本节主要是讲鸿蒙
- 【零基础学AI】第22讲:PyTorch入门 - 动态图计算与图像分类器实战
1989
0基础学AI人工智能pytorchpython机器学习sklearn深度学习
本节课你将学到理解PyTorch的核心概念和优势掌握张量(Tensor)的基本操作学会使用动态计算图构建神经网络实现一个完整的图像分类器项目训练模型并进行预测开始之前环境要求Python3.8+建议使用GPU(可选,CPU也能运行)内存:至少4GB需要安装的包#CPU版本(推荐新手)pipinstalltorchtorchvisionmatplotlibpillow#GPU版本(如果有NVIDIA
- MySQL多表查询进阶实战:连接与子查询深度解析
一、多表连接核心原理1.七种JOIN操作--创建测试数据CREATETABLEdepartments(dept_idINTPRIMARYKEY,dept_nameVARCHAR(50));CREATETABLEemployees(emp_idINTPRIMARYKEY,emp_nameVARCHAR(50),dept_idINT);--1.内连接(INNERJOIN)SELECTe.emp_nam
- 鸿蒙手势密码
大土豆的bug记录
鸿蒙开发鸿蒙harmonyos
一.实现步骤1.直接贴代码PatternLock(this.patternLockController).sideLength(320)//宽高.circleRadius(12)//圆点半径.pathStrokeWidth(1)//线宽度.regularColor('#ffd9d9d9')//未选中圆点色.backgroundColor('#FFFFFF')//设置背景色.activeColor(
- 信号与槽(3)
Mr_Xuhhh
c++c语言算法qt网络
信号与槽(3)带参数的信号槽当信号带有参数的时候,槽的参数必须和信号的参数一样,此时发射信号的时候,就可以给信号函数传递实参,与之对应的这个参数就会传递到对应的槽函数中总结:起到让信号给槽传参的效果举例代码如下:signals:voidmysignal(constQString&);public:voidhandleMySignal(constQString&);注意点:C++中声明参数的名字可以
- HarmonyOS免密认证方案 助力应用登录安全升级
HarmonyOS SDK
应用场景harmonyos安全华为
6月21日,2025年华为开发者大会"安全与隐私分论坛"在松山湖顺利举办。本论坛聚焦App治理与监管、星盾安全2.0的核心能力等进行深度分享与探讨。其中,HarmonyOSPasskey免密认证方案作为安全技术创新成果备受瞩目。该方案基于FIDO协议实现,支持用户在应用内、网页上乃至跨设备间实现无缝且安全的免密登录体验。火山引擎飞连作为伙伴代表,在现场分享了基于HarmonyOSPasskey免密
- android python ide_轻量级Python IDE : Thonny
weixin_39673037
androidpythonide
1.简介Thonny是基于python内置图形库tkinter开发出来的支持多平台(windows,Mac,Linux)的pythonIDE,支持语法着色、代码自动补全、debug等功能,如果你正在寻找一种“轻量级”的pythonIDE,那么可以试一试Thonny。2.安装有两种方式可以安装Thonny,从官网下载exe文件,然后安装,或者直接使用pip安装。2.1从exe文件安装进入Thonny
- 不能什么都听AI的!!上当了老铁!!
野蛮人6号
AI使用体验
今天像往常一样使用AI解决问题,当时我没意识到删掉会导致什么,我按它说的做了,将NVIDIA图形驱动工具删掉之后我的两块显示屏直接灭掉了一块,笑死。然后在我的细细盘问之下,发现原来这个东西不能删掉
- 查看电脑显卡(NVIDIA)应该匹配什么版本的CUDA Toolkit
发光的小豆芽
CUDA电脑
被串行计算逼到要吐时,决定重拾CUDa了,想想那光速般的处理感觉(夸张了)不要太爽,记下我的闯关记录。正好我的电脑配了NVIDIA独显,GTX1650,有菜可以炒呀,没有英伟达的要绕道了。回到正题,查看自己的显卡应该装什么版本的Cuda驱动,具体如下:(1)在桌面空白处右键选中NVIDIA控制面(2)查看系统信息适配的CUDA版本说明显卡支持的cuda版本不能超过12.2.79。或者cmd进入窗口
- Java SPI机制及Springboot使用实例
Armyyyyy丶
Java语言相关javaspi
目录一、SPI是什么二、使用场景三、使用介绍四、Springboot实例运用五、总结一、SPI是什么SPI全称ServiceProviderInterface,是Java提供的一套用来被第三方实现或者扩展的API,它可以用来启用框架扩展和替换组件。整体机制图如下:JavaSPI实际上是“基于接口的编程+策略模式+配置文件”组合实现的动态加载机制。系统设计的各个抽象,往往有很多不同的实现方案,在面向
- Android xposed 安装教程
口袋安少
android
AndroidXposed安装教程Xposed框架是一个强大的工具,它可以让开发者和高级用户在Android设备上进程地修改应用程序而不需要修改APK文件。本文将教你如何在Android设备上安装Xposed框架。我们将详细介绍整个过程,并提供每一步需使用的代码及其解释。安装流程概览安装Xposed框架的步骤如下:步骤描述步骤1确认设备已root步骤2下载并安装XposedInstaller应用步
- Android 安装使用教程
小奇JAVA面试
安装使用教程android
一、Android开发简介Android是Google推出的基于Linux内核的开源操作系统,广泛用于智能手机、平板等移动设备。开发Android应用主要使用Java或Kotlin编程语言,并借助AndroidStudio作为官方IDE。二、安装Android开发环境2.1安装JDK(JavaDevelopmentKit)Android开发需要安装JDK(推荐JDK11或17):下载地址:http
- YOLO 中的三大框类型全解析:Ground Truth、Anchor、Bounding Box 有何区别?
1.GroundTruthBox(真值框)数据集中人工标注的真实目标位置。•是“答案”,模型训练的目标。•标注格式通常是[x,y,w,h,class_id]•比如一张猫的图,它的真实框就是groundtruthbox。⸻2.AnchorBox(锚框)预设的一些模板框,模型学习时的“参考基准”。•是一些固定的宽高组合(比如[10×13]、[16×30]等),•每个gridcell会分配若干ancho
- 海康威视GidE工业相机的Bayer格式图像数据处理
接上篇海康威视GigE工业相机的python调用demo-CSDN博客Bayer格式数据取到了图像数据后,就需要对数据进行处理。我手里的这台CU系列面阵相机,在MVS中可以看到它的数据默认格式是BayerRG8:BayerRG8图像格式,采用RGGB布局。在这种布局中,红色(R)、绿色(G)和蓝色(B)像素点交错排列。具体来说,奇数扫描行按R、G、R、G……顺序排列,偶数扫描行按G、B、G、B……
- java中http调用接口 传参为form-data
洋:Y
springbootjavahttpservlet
直接上代码@OverridepublicJSONObjectgetCameraList(intcurrent,intsize,Stringcode,Stringname)throwsIOException{DefaultHttpClientclient=newDefaultHttpClient();MultipartEntityBuilderbuilder=MultipartEntityBuild
- Windchill系统获取指定类型文档的最新大版本的最新小版本SQL
不吃葱的胖虎
sql数据库html
获取指定类型的文档集合(最新版)select*fromwtdocumentd,wttypedefinitiontd,wtdocumentmasterdmwhered.idA2typeDefinitionReference=td.ida2a2andd.ida3masterreference=dm.ida2a2andd.versionsortida2versioninfo=(selectmax(d2.
- Flink TiDB CDC 环境配置与验证
一、TiDB数据库核心配置1.启用TiCDC服务确保TiDB集群已部署TiCDC组件(版本需兼容FlinkCDC3.0.1),并启动同步服务:#示例:启动TiCDC捕获changefeedcdcclichangefeedcreate\--pd="localhost:2379"\--sink-uri="blackhole://"\--changefeed-id="flink-cdc-demo"2.验
- 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