-
oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串
2017-05-06 20:26:52varchar2 1~4000字节 可变长度字符串,与CHAR类型相比,使用VARCHAR2可以节省磁盘空间,但查询效率没有char类型高 数值类型 Number(m,n) m(1~38) n(-84~127) 可以存储正数、负数、零、定点数和精度为38位的浮点数... -
Complete the Word-一道字符统计,解决很简单,优化有点难
2017-01-25 16:32:44’替换成缺失的字母,这个字符串以后的’?’用任意字母填充完就可以输出。这样做的复杂度是O(26*26*|s|) 可以优化成O(|s|),原理是用一个计数器counter,先统计第一个26长度的字符串字母的出现情Codeforces Round #372 (Div. 2)B. Complete the Word
解决很简单,直接枚举每一个26长度的字串看符不符合就行了,符合的话先把这个子字符串’?’替换成缺失的字母,这个字符串以后的’?’用任意字母填充完就可以输出。这样做的复杂度是O(26*26*|s|)
可以优化成O(|s|),原理是用一个计数器counter,先统计第一个26长度的字符串字母的出现情况,然后从第一个26长度的字符串开始往后移一个字符,把第一个字符代表的字母减一(如果减为零counter减一),如果是问号的话counte也减一,然后把新加进来的字母加一(如果是一的话counter加一),如果是问号的话counte也加一,然后检查counter是否为26就可以了,26的话就填充输出。先贴没有优化过的代码
#include <iostream> #include <cstdio> #include <cstring> #include <algorithm> using namespace std; const int maxn = 50050; char s[maxn]; int a[26]; int main() { scanf("%s",s); int len = strlen(s); int ok = 0; for(int i=0;i<len;++i){ for(int j=0;j<26;++j)a[j] = -1; int letter = 0,q = 0; for(int j=i;j<i+26;++j){ if(s[j]=='?')++q; else{ if(a[ s[j]-'A' ] == -1){ a[s[j]-'A'] = j; ++letter; } else break; } } if(letter + q == 26){ for(int j=i;j<i+26;++j){ if(s[j]=='?'){ for(int k=0;k<26;++k){ if(a[k] == -1){ a[k] = j; s[j] = k + 'A'; break; } } } } ok = 1; break; } } if(ok){ for(int i=0;i<len;++i)if(s[i]=='?')s[i]='A'; printf("%s\n",s); }else printf("-1\n"); return 0; }
优化为O(|s|)的版
#include <iostream> #include <cstdio> #include <cstring> #include <algorithm> using namespace std; const int maxn = 50050; char s[maxn]; int cnt[26],len; void fulfill(int pos){ int x = 0; while(cnt[x]>0)x++; for(int i=pos;i<pos+26;++i){ if(s[i]=='?'){ s[i] = 'A' + x; x++; while(cnt[x]>0)x++; } } for(int i=0;i<len;++i)if(s[i]=='?')s[i]='A'; } int main() { scanf("%s",s); len = strlen(s); if(len<26){ printf("-1\n");return 0;} memset(cnt,0,sizeof(cnt)); int counter = 0; for(int i=0;i<26;++i){ if(s[i]=='?'){++counter;continue;} else { cnt[s[i]-'A']++; if(cnt[s[i]-'A']==1)++counter; } } if(counter==26){ fulfill(0); printf("%s\n",s); return 0; } for(int i=26;i<len;++i){ if(s[i-26]=='?')--counter; else{ cnt[s[i-26]-'A']--; if(cnt[s[i-26]-'A']==0)--counter; } if(s[i]=='?')++counter; else{ cnt[s[i]-'A']++; if(cnt[s[i]-'A']==1)++counter; } if(counter==26){ fulfill(i-25); printf("%s\n",s); return 0; } } printf("-1\n"); return 0; }
-
评估采用的测试文本有253 3709行,共2837 4490个字符 评估结果位于target/evaluation目录下: corpus-text.txt为分好词的人工标注文本,词之间以空格分隔 test-text.txt为测试文本,是把corpus-text.txt以标点符号...
-
leetcode-583. 两个字符串的删除操作
2020-04-06 16:13:27给定两个单词 word1 和 word2,找到使得 word1 和 word2 相同所需的最小步数,每步可以删除任意一个字符串中的一个字符。 示例: 输入: “sea”, “eat” 输出: 2 解释: 第一步将"sea"变为"ea",第二步将"eat"变为...题目
给定两个单词 word1 和 word2,找到使得 word1 和 word2 相同所需的最小步数,每步可以删除任意一个字符串中的一个字符。
示例:
输入: "sea", "eat" 输出: 2 解释: 第一步将"sea"变为"ea",第二步将"eat"变为"ea"
提示:
给定单词的长度不超过500。 给定单词中的字符只含有小写字母。
解题思路
仿照编辑距离,没有替换只有删除,故新的状态只和2个word任一去掉最末字符的状态有关
成绩
时间>20.22%
空间>5.88%代码
class Solution: def minDistance(self, word1: str, word2: str) -> int: dp = [[i for i in range(j, j + len(word1) + 1)] for j in range(len(word2) + 1)] for i in range(1, len(word2) + 1): for j in range(1, len(word1) + 1): if word1[j - 1] == word2[i - 1]: dp[i][j] = dp[i - 1][j - 1] else: dp[i][j] = min(dp[i - 1][j] + 1, dp[i][j - 1] + 1) return dp[-1][-1]
-
JAVA 正则表达式
2010-01-15 11:16:37众所周知,在程序开发中,难免会遇到需要匹配、查找、替换、判断字符串的情况发生,而这些情况有时 又比较复杂,如果用纯编码方式解决,往往会浪费程序员的时间及精力。因此,学习及使用正则表达式, 便成了解决这... -
Visual C++开发实战1200例(第1卷).(清华出版.刘锐宁.梁水.李伟明).part1
2016-06-16 01:35:39实例152 替换指定的字符串 实例153 向字符串中添加子字符串 实例154 截取字符串中的数字 实例155 将选定字符转换成大写 实例156 将选定字符转换成小写 实例157 截取指定位置的字符串 4.2 字符串的比较与判断 ... -
Visual C++开发实战1200例(第1卷).(清华出版.刘锐宁.梁水.李伟明).part2
2016-06-16 01:38:19实例152 替换指定的字符串 实例153 向字符串中添加子字符串 实例154 截取字符串中的数字 实例155 将选定字符转换成大写 实例156 将选定字符转换成小写 实例157 截取指定位置的字符串 4.2 字符串的比较与判断 ... -
C#开发实战1200例(第一卷+第二卷)+源码下载地址.txt
2019-05-17 09:24:24主要内容有C#开发环境的使用、C#语言基础应用、字符串处理技术、数组和集合的使用、面向对象编程技术、数据结构与算法、Windows窗体基础、特色窗体界面、窗体控制技术、MDI窗体和继承窗体、Windows常用控件的使用、... -
C#开发实例大全(基础卷).软件开发技术联盟(带详细书签) PDF 下载
2018-02-20 01:26:55主要内容有C#开发环境的使用、C#语言基础应用、字符串处理技术、数组和集合的使用、面向对象编程技术、数据结构与算法、Windows窗体基础、特色窗体界面、窗体控制技术、MDI窗体和继承窗体、Windows常用控件的使用、... -
C#开发实战1200例(第1卷).(清华出版.王小科.王军.扫描版).part1
2016-06-16 20:55:43实例085 使用正则表达式替换字符串 实例086 使用正则表达式拆分字符串 实例087 使用正则表达式验证输入字母 实例088 使用正则表达式验证中文汉字输入 实例089 使用正则表达式验证输入字符串 3.7 网络验证应用... -
C#开发实战1200例(第1卷).(清华出版.王小科.王军.扫描版).part2
2016-06-16 20:59:52实例085 使用正则表达式替换字符串 实例086 使用正则表达式拆分字符串 实例087 使用正则表达式验证输入字母 实例088 使用正则表达式验证中文汉字输入 实例089 使用正则表达式验证输入字符串 3.7 网络验证应用... -
C#开发实战1200例(第1卷).(清华出版.王小科.王军.扫描版).part3
2016-06-16 21:02:21实例085 使用正则表达式替换字符串 实例086 使用正则表达式拆分字符串 实例087 使用正则表达式验证输入字母 实例088 使用正则表达式验证中文汉字输入 实例089 使用正则表达式验证输入字符串 3.7 网络验证应用... -
EXCEL集成工具箱完整版 (简体/繁体/英文多国语言版) V7.0
2010-08-13 10:31:10例:替换字符串就支持起始长度、替换个数、GB2与BIG5码相互转换等多选项操作,也支持文件扩展名的修改。现为市场上功能最强大的一款文件及图片批量改名工具。 【工作表保护】 对当前工作薄中的各工作表批量一次性用... -
delphi 开发经验技巧宝典源码
2010-08-12 16:47:230181 替换指定的字符串 117 0182 在文本中删除指定的汉字或句子 118 0183 指定符号分割字符串 119 0184 如何使用随机密码和字符串 120 第6章 日期和时间 121 0185 获得系统当前时间 122 0186 获得系统... -
c/c++ 学习总结 初学者必备
2009-09-16 08:50:1023、编写gbk_strlen函数,计算含有汉字的字符串的长度,汉字作为一个字符处理;已知:汉字编码为双字节,其中 参数里涉及指针,就要考虑该指针是不是一个需要修改的量,如果是,则参数应采用指向指针的指针。 (C语言里... -
EXCEL集成工具箱V6.0
2010-09-11 01:44:37例:替换字符串就支持起始长度、替换个数、GB2与BIG5码相互转换等多选项操作,也支持文件扩展名的修改。现为市场上功能最强大的一款文件及图片批量改名工具。 【工作表保护】 对当前工作薄中的各工作表批量一次性用... -
EXCEL集成工具箱V9.0 多国语言最终原版(2003-2010通用)
2011-01-07 20:40:25例:替换字符串就支持起始长度、替换个数、GB2与BIG5码相互转换等多选项操作,也支持文件扩展名的修改。现为市场上功能最强大的一款文件及图片批量改名工具。 【工作表保护】 对当前工作薄中的各工作表批量一次性用... -
EXCEL集成工具箱V8.0完整增强版(精简)
2010-09-23 16:58:17例:替换字符串就支持起始长度、替换个数、GB2与BIG5码相互转换等多选项操作,也支持文件扩展名的修改。现为市场上功能最强大的一款文件及图片批量改名工具。 【工作表保护】 对当前工作薄中的各工作表批量一次性用... -
EXCEL集成工具箱V8.0 多国语言版(2003-2010通用)
2010-09-11 12:08:58例:替换字符串就支持起始长度、替换个数、GB2与BIG5码相互转换等多选项操作,也支持文件扩展名的修改。现为市场上功能最强大的一款文件及图片批量改名工具。 【工作表保护】 对当前工作薄中的各工作表批量一次性用... -
powerbuilder
2013-11-21 17:11:48功能直接向打印机发送任意字符串,通常用于发送打印机的控制代码。 语法PrintSend ( printjobnumber, string {, zerochar } ) 参数printjobnumber:用PrintOpen()函数打开的打印作业号string:string类型,指定发送... -
Excel百宝箱9.0无限制破解版.rar
2012-09-05 09:31:51【合并到选区】:将一个单元格的值合到一个区域中去,可以插入到原字符之前也可以插入到原字符之后 【可还原的合并居中】:合并数据时可以保留所有数据,可以随心所欲定义分隔符。还可以随时取消合并,还原所有... -
Visual Basic开发实战1200例(第Ⅰ卷).(清华出版.孙秀梅.巩建华).part1
2016-06-14 11:19:42实例140 获得中英文混合字符串的字节长度 实例141 获得某个字符在一个字符串中最后出现的位置 实例142 获得字符串中指定后几位字符 5.5 综合应用 实例143 从字符串中分离文件路径、文件名及其扩展名 实例144 ... -
文件批处理百宝箱 v10.0.rar
2019-07-13 04:39:49提供了对doc/ppt/txt/asp/html等文档进行智能字符批量替换(支持正则,Word通配符),对txt文本行的添加、删除、提取、统计分割等的处理,对doc/txt类型互转,对xls表合并 ,对ppt转word,Office文档密码筛查, txt... -
Java范例开发大全 (源程序)
2011-04-27 07:47:22实例88 替换指定的字符 117 实例89 分割字符串 117 实例90 如何使用substring()方法截取子串 118 实例91 分解字符串 119 实例92 字母大小写转换 120 实例93 去除多余的空白 120 实例94 原始数组... -
java范例开发大全源代码
2011-10-30 23:31:51实例88 替换指定的字符 117 实例89 分割字符串 117 实例90 如何使用substring()方法截取子串 118 实例91 分解字符串 119 实例92 字母大小写转换 120 实例93 去除多余的空白 120 实例94 ... -
java范例开发大全
2013-03-08 20:06:54实例88 替换指定的字符 117 实例89 分割字符串 117 实例90 如何使用substring()方法截取子串 118 实例91 分解字符串 119 实例92 字母大小写转换 120 实例93 去除多余的空白 120 实例94 原始数组类型的String形式 121... -
Java范例开发大全(全书源程序)
2013-04-05 11:50:26实例88 替换指定的字符 117 实例89 分割字符串 117 实例90 如何使用substring()方法截取子串 118 实例91 分解字符串 119 实例92 字母大小写转换 120 实例93 去除多余的空白 120 实例94 原始数组类型的String... -
C#编程经验技巧宝典
2008-06-01 08:59:3373 <br>0106 如何获得一个字符串中数字的长度 74 <br>0107 如何获得字符串中数字或字母的长度 74 <br>0108 如何获得字符串中某个数字的位置 75 <br>0109 获得字符串中汉字的个数 76 <br>0110... -
Excel VBA实用技巧大全 附书源码
2010-10-08 18:59:2404139替换单元格内的字符(Replace方法) 04140替换单元格内的字符(工作表函数) 04141设置单元格字符串中一部分字符的格式(上标、下标) 04142设置单元格字符串中一部分字符的格式(其他字体属性) 04143设置... -
Python核心编程第二版(中文)
2015-04-23 16:40:1315.2.2 匹配任意一个单个的字符(.) 15.2.3 从字符串的开头或结尾或单词边界开始匹配(^/$ /\b /\B ) 15.2.4 创建字符类([]) 15.2.5 指定范围(-)和否定(^) 15.2.6 使用闭包操作符(*,+,?,{})实现多...
收藏数
43
精华内容
17
-
牛牛量化策略交易
-
LeetCode61--找到小镇法官
-
LVS + Keepalived 实现 MySQL 负载均衡与高可用
-
在 Linux 上构建企业级 DNS 域名解析服务
-
电信系统架构方案
-
RationalClearQuest开发配置管理以及应用各种自动化测试解决开发中的问题
-
使用vue搭建微信H5公众号项目
-
前端21-源码
-
华为1+X——网络系统建设与运维(高级)
-
Mysql数据库面试直通车
-
云计算在下一代数据中心建设中的应用及案例解析62云计算与物联网未来城市构想.pdf
-
poi操作excel注意事项
-
NFS 网络文件系统
-
龙芯实训平台应用实战(希云)
-
从一个问题的解决过程探索dm.ini的内存参数的作用
-
NFS 实现高可用(DRBD + heartbeat)
-
集成IBMRationalPortfolioManager和IBMRationalClearQuest:集成配置,第1部分
-
PCL 实现最小二乘平面拟合
-
MySQL 高可用(DRBD + heartbeat)
-
Campinas-Tech-talents:Atividades feitas na trilha Java,patrocinado pela Assertiva,do curso Campinas Tech Talents-源码