- SSH和Git的基本知识
0zxm
sshgit运维vscode
教程PPT-lec2-2023秋冬实用技能拾遗(tonycrane.cc)B站视频SSH安全外壳协议概念SSH全称secureshell,安全外壳协议(安全的shell),是一个计算机网络协议(默认端口号为22)。通过ssh协议可以在客户端安全(提供身份认证、信息加密)的远程连接Linux服务器或其他设备。使用广泛的Xshell软件就是基于SSH协议远程连接。SSH远程连接之后能干什么?SSH远程
- SVN迁移到git
freeCodeSunny
gitgitsvn迁移
前言目前同步开发有好几个项目,有的采用svn管理,有的采用git管理,一想也知道svn管理的项目都比较老,每次切换工程开发都要改变提交代码的方式。因此就打算把svn管理的项目迁移到git上,其实前面说的都不是重点,重点是svn服务器有时不稳定,所以才打算迁移到git上。迁移过程说干就干,问题是之前都没有迁移过啊!这都难不倒我,有万能的google,随便搜索关键字svn迁移到git,随便出来都是一大
- 将项目从 SVN 迁移到 GIT
单手入天象
javagitsvngithub
场景项目开发中,项目原本是用的SVN,已经用了一年了,现在公司要抛弃SVN用Git,要求把SVN的代码直接搬过去Git,并保留之前的历史提交记录。操作步骤找到已经被svn管理的项目的根目录WinFarm,右键GitBashHeresvnlog-q|awk-F'|''/^r/{sub("^","",$2);sub("$","",$2);print$2"="$2""}'|sort-u>userinfo
- Linux中Git推送报错Permissions 0644 for ‘/root/.ssh/id_rsa‘ are too open
秦时明月之君临天下
LinuxGitGitHublinuxgitssh
准备在Linux上配置秘钥,方便Git上传代码到GitHub。但是秘钥(id_rsa文件)是从本地Windows环境上传到Linux服务器上面的,在执行推送时报错了,如下:#gitpush-uoriginmainTheauthenticityofhost'github.com(20.205.243.166)'can'tbeestablished.ECDSAkeyfingerprintisSHA25
- MasaCtrl:Tuning-free mutual self-attention control for consistent image synthesis and editing
Kun Li
图像视频生成大模型stablediffusion
https://github.com/TencentARC/MasaCtrl/issues/13https://github.com/TencentARC/MasaCtrl/issues/13QuestionaboutMask·Issue#31·TencentARC/MasaCtrl·GitHub
- Git版本控制
SwDengpeixun
版本控制git
文章目录概念Git常用命令1.常用全局配置配置用户信息配置别名配置编译器vim配置亮高显示查看所有配置2.下载代码3.分支操作4.修改代码并提交代码修改后,可以通过如下将修改的代码标记为track状态将标记为track状态的文件提交提交代码到远程仓库5.回退代码将代码回退到三天前回退代码到某一天的某个时间点查看某个时间段的日志将服务器代码回退到某个点并提交到某个分支按日期查看log6.合并分支把另
- git是什么?git的五个命令,git和svn的区别
茶卡盐佑星_
gitsvn
Git是什么?Git是一个开源的分布式版本控制系统(DistributedVersionControlSystem,简称DVCS),由LinusTorvalds在2005年开发。它旨在高效地处理从很小到非常大的项目版本管理,可以有效、高速地追踪项目的变化历史,支持多人协作开发。Git强调速度和数据完整性,其内容存储使用SHA-1哈希算法,确保代码内容的完整性,并在遇到磁盘故障和网络问题时降低对版本
- Git中pull和fetch的区别
Amagi.
git
在Git中,pull和fetch都是用于从远程仓库获取更新的命令,但它们的功能和使用场景有所不同。以下是二者的主要区别:gitfetch功能:fetch命令用于从远程仓库下载所有未被合并的更新,主要是最新的提交和分支信息。但它不会自动合并这些更改到你的本地分支。使用场景:当您想要查看远程仓库的状态,了解有哪些更新,但不想立即合并这些更改时,使用fetch是一个安全的选择。您可以在本地检查更新并决定
- pcie debug web portal
斐非韭
fpga开发
https://xilinx.github.io/pcie-debug-kmap/pciedebug/build/html/docs/PCIe_Debug_General_Techniques/index.html34536-XilinxSolutionCenterforPCIExpresshttps://support.xilinx.com/s/article/34536?language=en
- XrecyclerView实现上拉加载和下拉刷新+多条目(MVP获取数据)
✎ℳ๓Eternity✾
进阶
依赖implementation'com.jcodecraeer:xrecyclerview:1.5.9'implementation'com.android.support:recyclerview-v7:28.0.0'图片加载依赖implementation'com.github.bumptech.glide:glide:4.8.0'ActivitypublicclassShoppingAct
- 爬取MalwareBazaar实现恶意样本数据自由
梦想闹钟
python
最近在做恶意软件的研究时,发现一个主要问题就是缺少样本,在网上搜索后发现各个开源的数据集都有各种各样的问题,如这个DikeDataSet:https://github.com/iosifache/DikeDataset优点是有白样本,缺点是黑样本分布不均且主要集中在一个家族里发现有一个比较好用的开源数据平台MalwareBazaar:https://bazaar.abuse.ch/browse/可
- 信息安全(密码学)---数字证书、kpi体系结构、密钥管理、安全协议、密码学安全应用
魔同
信息安全sslwebssh密码学网络安全
数字证书数字证书(DigitalCertificate,类似身份证的作用)----防伪标志CA(CertificateAuthority,电子商务认证授权机构)----ca用自己私钥进行数字签名数字证书姓名,地址,组织所有者公钥证书有效期认证机构数字签名■公钥证书的种类与用途■证书示例·序列号04·签名算法md5RSA·颁发者·有效起始日期·有效终止日期·公钥■数字证书按类别可分为个人证书、机构证
- Yolov8和杂草检测
Diros1g
YOLO
1.网址收集Yolov8官方网站:Train-UltralyticsYOLODocsgithub非官方介绍教程网站:【YOLOv8系列】(二)YOLOv8环境配置,手把手嘴对嘴保姆教学-CSDN博客【YOLOv8系列】(三)YOLOv8应用实践:从识别到分类再到分割的全方位视觉解决方案-CSDN博客【YOLOv8系列】(四)YOLOv8使用自己的数据集进行模型训练,成就感满满_yolov8训练自己
- [Datawhale#1] cv task1 - Datawhale AI夏令营
cinboxer
cvpythonnumpypandasmatplotlib
参加cv方面的培训,记录自己的一些感悟吧。报名赛事2024“大运河杯”数据开发应用创新大赛——城市治理厚德云远程算力租赁https://portal.houdeyun.cn/register?from=Datawhale可以用3090,速度很快!baselineaptinstallgit-lfsgitlfsinstallgitclonehttps://www.modelscope.cn/datas
- helm学习第四篇-微服务组件的加入
Wade_Crab
java-rocketmq微服务springboot云计算kubernetes
微服务的组件也放进去—向外扩张要将Nacos服务添加到你已经包含了SpringBoot、Redis、MySQL和RocketMQ的HelmChart中,你可以按照以下步骤操作:注意!!:nacos好像只有helm文件的github仓库,没有helm的包地址仓库。所以一会思路:找到nacos的github仓库:nacos仓库修改values.yaml内容1.添加NacosHelmChart依赖首先,
- 《CSS 揭秘》每章详细读书笔记
lawler61
原创csscss揭秘读书笔记
《CSS揭秘》每章详细读书笔记[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eS4SupjZ-1589817256003)(https://raw.githubusercontent.com/lawler61/blog/master/css/css-jiemi-notes/images/logo.jpg)]一、个人站点www.freeze61.me可直接复制html
- 【前端面试题】前端工程化、Webpack、Vite、Git项目管理相关问题
快乐点吧
前端webpackgit
目录关于前端工程化关于Webpack关于Vite关于Git项目管理综合性问题关于前端工程化1.前端工程化的定义和好处问题:什么是前端工程化?它的主要好处是什么?答案:前端工程化是指在前端开发中应用系统化、自动化和标准化的方法,包括模块化、组件化、自动化构建、测试等,以提高开发效率和代码质量。主要好处包括提升开发效率、增强代码可维护性、提高代码质量和团队协作效率。2.前端项目的目录结构问题:你通常如
- Android U WMShell动画调用堆栈
yi诺千金
AndroidFramework从入门到入土WMShellandroid
本文主要简单介绍WMShell动画调用堆栈代码环境:repoinit-uhttps://mirrors.tuna.tsinghua.edu.cn/git/AOSP/platform/manifest-bandroid-14.0.0_r7Systemserver侧TAG:atcom.android.server.wm.Transition.onTransactionReady(Transition.
- 华为NPU下安装apex
门前大橋下丶
npuapex
apt-getupdate-yapt-getinstall-ypatchbuild-essentiallibbz2-devlibreadline-devwgetcurlllvmlibncurses5-devlibncursesw5-devxz-utilstk-devliblzma-devm4dos2unixlibopenblas-devgitpipinstallwheelgitclone-b5.0
- mac GitHub客户端commit不了,应该怎么办?
大神风格化X
今天我想将之前封装在GitHub上的项目重构一下,突然发现Git提示有冲突,然后我就想解决这个冲突,打开了终端通过命令得知之前的.ssh密钥失效(或者丢失)了,然后我就在我GitHub上将本地.git的第二个文件(我不太记得名字了)中的密钥复制到GitHub官网上,然后终端连接,发现又一个问题:提示远程端链接错误,然后我打开了本地GitHub库中对应项目的.git文件,上面的URL竟然没有,卧槽,
- 使用deeplx翻译
不脱发的码农~~~~
爬虫项目实战开发语言前端
部署deeplx翻译网址:https://github.com/guobao2333/DeepLX-Serverlessgitclonehttps://github.com/guobao/DeepLX-ServerlesscdDeepLX-Serverlessnpminpmrunstartcurl--location--requestPOST'https://YOUR-DOMAIN/transla
- MindSearch 快速部署(InternStudio 版)
qq_31064397
人工智能python深度学习
选择InternStudio算力平台50%A100的cuda12.2的开发机,并使用sshvscode远程连接到开发机。MindSearch(欢迎Star):https://github.com/InternLM/MindSearch1.使用免费的搜索接口1.1激活环境小助手提前帮大家安装好了环境,只需要一步一步按照下面的步骤便可以启动MindSearch。condaactivate/share/
- 手残党福音,一键生成随机颜色:randomColor
我码玄黄
前端教你一招思维的火花前端JavaScript开源
前言在项目中常常会遇到根据一个主颜色,然后生成一整个主题色系各种层次颜色的需求,尤其在切换主题、随机展示内容等场景。恰好找到了一库可以实现此功能,话不多说,我们一起来看看吧。randomColor线上github地址:https://github.com/davidmerfield/randomColor目前这个项目已经被移植到了各个常用语言中,例如C#,C++,Go,Haskell,Kotlin
- git status 出现乱码解决方案
旋转马达
我们在使用gitstatus查看当前仓库中的修改的时候,如果有中文总会看到以下的情况,image.png如果你以为这是编码的问题,这就尴尬了,从编码入手永远解决不了这个问题,这个问题出现在路径上,所以我们使员工git进行以下配置就可以正常的看到中文了.gitconfig--globalcore.quotepathfalse
- AUTOX.JS 新手入门
换个网名有点难
javascript开发语言
工具介绍1.autoxjs1.1autojs介绍Auto.js是一个使用JavaScript编写Android自动化脚本的工具,由于原作者不再维护Auto.js项目,目前常见的两个分支:AutoX和Auto.jsPro。其中AutoX是开源的https://github.com/kkevsekk1/AutoX文档:http://doc.autoxjs.com/#/Auto.jsPro商业化版本,闭
- 用powermock编写单元测试
左弦月
单元测试
1、pom文件引入jar包org.springframework.bootspring-boot-starter-testtestjunitjunittestorg.powermockpowermock-module-junit42.0.2testorg.powermockpowermock-api-mockito22.0.2testcom.github.jsonzoujmockdata4.1.2
- 【学习笔记】:Ubuntu 22 使用模型量化工具llama.cpp部署大模型 CPU+GPU
淮序_
笔记ubuntullamapython
学习笔记:Ubuntu22使用模型量化工具llama.cpp部署大模型CPU+GPU前言1下载并编译llama.cpp1.1git下载llama.cpp仓库源码1.2编译源码(make)1.2.1选择一:仅在CPU上运行1.2.2选择二:使用GPU,与cuBLAS编译2量化大模型2.1准备大模型2.2生成量化模型3加载模型3.1CPU3.2GPU4llama-cpp-python4.1安装llam
- AI-windows下使用llama.cpp部署本地Chinese-LLaMA-Alpaca-2模型
mrbone11
AI人工智能windowsllamallama2大语言模型LLM
文章目录Llamp.cpp环境配置Chinese-LLaMA-Alpaca-2模型介绍模型下载转换生成量化模型Anaconda环境安装运行Llamp.cpp环境配置
[email protected]:ggerganov/llama.cpp.gitcdllama.cppmkdirbuildcdbuildcmake..cmake--build.--configRelease生成的文件在.\b
- git 的基础命令,自动化打tag脚本
帅大黑
gitgithubbash
官网地址https://git-scm.com/docsgit常用命令gitinit初始化仓库gitadd添加缓存区gitcommit提交更改gitfetch拉去远端不合并gitpull拉去远端合并gitpush推送代码gitmerge合并代码gittag新建taggitreset修改HEAD的位置getrevert撤销还原提交gitremote在远程库操作gitclean清楚未跟踪的文件gitc
- 云计算day13
巭氼
云计算
一、Git概述Git是一种分布式版本控制系统,用于跟踪和管理代码的变更。它是由LinusTorvalds创建的,最初被设计用于Linux内核的开发。Git允许开发人员跟踪和管理代码的版本,并且可以在不同的开发人员之间进行协作。Github用的就是Git系统来管理它们的网站,Github是一个社区,Git是一个服务系统,Github只支持Git分布式系统,所以故名成为Github。Git的主要功能包
- 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