经管之家App
让优质教育人人可得
立即打开
全部版块
我的主页
›
论坛
›
数据科学与人工智能
›
数据分析与数据科学
›
SAS专版
zz: 一道sas的题目,涉及到算法
楼主
pinseng
2117
7
收藏
2011-01-30
zz from mitbbs
给定字符串,求其不出现重复字符的子字符串的最大长度,如何测试。比如,“abcabcbb”最大的就是“abc”长度3, “bbbbb”最大就是“b”长度1。"abbcbba"长度为2.
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
全部回复
沙发
liudeng2005
2011-1-30 08:27:04
简单啊,读“abcdegg......xyz”26个字母的字符串,外循环26次,依次读取26个字母,内循环次数=字符串长度次数,依次读取每个字母并和外循环的比较,外循环每循环一次计算1次,最后加起来就ok了.
此算法在字符串短的时候可能不会是最快i的,但应该是最最直观的。在字符串长了的时候应该是最快的,因为没有了排序和比较!
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
藤椅
pinseng
2011-1-30 09:29:08
能不能写个code看看? 谢谢
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
板凳
sber
2011-1-30 11:54:13
data s(keep=a n);
a="guiydtudug";
l=length(a);
do i=1 to l;
z=substr(a,i,1);
do k=i+1 to l;
if substr(a,k,1)=z then do;
n=k-1;
output;
end;
end;
end;
proc sort;
by n;
run;
出来的数据集S中的第一条观测中变量N的值就是不重复的最长长度。
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
报纸
sber
2011-1-30 11:56:16
上面CODE中的变量a的值是给定的字符串,呵呵,我的方法比较笨 ,抛砖引玉啦!
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
地板
pinseng
2011-1-30 13:07:16
明白了 谢谢
每取一个字符,然后那后面所有的做对比,看看有没有相同的
谢谢啦
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
点击查看更多内容…
7楼
sber
2011-1-31 19:00:38
昨天写的程序不大好,今天改进了一下,呵呵,假设原字符是S,最大长度是want.
data a (keep=s want);
s="abcabcbb";
l=length(s);
do i=1 to l;
t=substr(s,(i+1));
u=substr(s,i,1);
m=find(t,trim(u));
r=m+i-1;
if m gt 0 then want=min(r,want);
if want=. then want=l;
end;
run;
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
8楼
yixufeng
2011-2-11 18:02:56
上面的结果不对啊,比如s='"babcdbabcdbb', 实际结果是babcdb,长度为6。
可参考《编程珠玑》这本书,大致的算法是:
取字符串所有的后缀,然后对所有的后缀进行排序,找出前后后缀间最大的长度,然后取最大长度的max, 即是原字符串的子字符串的最大长度,在这过程中需考虑是否重复子字符串。
给个例子:s="cacacb"
后缀1: cacacb;
后缀2: acacb;
后缀3: cacb;
后缀4: acb;
后缀5: cb;
后缀6: b.
然后排序即为:
acacb
acb
b
cacacb
cacb
cb
排序后比较:
acacb与acb,长度为2(子字符串ac);
acb与b, 长度为1(子字符串b);
...
最后可得原字符串最大子字符串长度为3(子字符串cac)
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
相关推荐
SAS的巧妙使用
身为海归的悲哀 zz
请问SAS的进制转换函数有哪些?帮助里找不到,谢谢!
有没有想学统计软件SAS的朋友?
能不能推荐一下学习sas的免费资料呢,不胜感激
关于论坛文库的一点建议
SAS的数据挖掘模块
在做一个SAS的练习,有一个数据输入的问题
关于制药公司SAS的实际应用
信用风险评分卡研究_基于SAS的开发与实施文件与代码例子,别处太贵,这里免费分享
栏目导航
SAS专版
经管高考
学道会
经管文库(原现金交易版)
外文文献专区
休闲灌水
热门文章
CDA考试模拟题库:新增章节练习题(更新于1 ...
文本分析:从经管顶刊“加分项”到学术发表 ...
CDA 认证考试大纲 2025 重磅更新:一二级考 ...
CAIE人工智能工程师认证
哈耶克作品集 6本 含通往奴役之路、自由宪章 ...
博观研究院2025年中国跨境进口保健品市场分 ...
南大CSSCI(2025-2026)来源期刊目录及扩展版
货币--是如何产生成长发展的和人类的四大工 ...
【详细整理,24重磅!】1990-2024上市公司市场 ...
量子科技行业深度报告-量子革命:量子科技的 ...
推荐文章
AI狂潮席卷学术圈,不会编程也能打造专属智 ...
10月重磅来袭|《打造Coze/Dify专属学术智能 ...
最快1年拿证,学费不足5W!热门美国人工智能 ...
关于如何利用文献的若干建议
关于学术研究和论文发表的一些建议
关于科研中如何学习基础知识的一些建议 (一 ...
一个自编的经济学建模小案例 --写给授课本科 ...
AI智能体赋能教学改革: 全国AI教育教学应用 ...
2025中国AIoT产业全景图谱报告-406页
关于文献求助的一些建议
说点什么
分享
微信
QQ空间
QQ
微博
扫码加好友,拉您进群
各岗位、行业、专业交流群