0
点赞
收藏
分享

微信扫一扫

算法:输出给定字符串的全部连续子串


题目来源:

阿里实习生电话面试题目:​​javascript:void(0)​​

题目描述:

给定一个字符串,输出其所有连续子串,如:给定字符串为abcd,则要输出的其全部连续子串为:a,b,c,d,ab,bc,cd,abc,bcd,abcd。

思路:

逐步扫描,逐渐输出步长分别为0,1,2,3的子字符串

/*
* $filename: Test.java,v $
* $Date: 2014-3-12 $
* Copyright (C) ZhengHaibo, Inc. All rights reserved.
* This software is Made by Zhenghaibo.
*/
package edu.njupt.zhb;
/*
*@author: ZhengHaibo
*web: http://blog.csdn.net/nuptboyzhb
*mail: zhb931706659@126.com
*2014-3-12 Nanjing,njupt,China
*/
public class Test {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
displaySubstring("abcdefg");
}
public static void displaySubstring(String str){
for(int k=0;k<str.length();k++){//控制步长
for(int i=0;i<str.length()-k;i++){//对字符串逐步扫描
for(int j=i;j<i+k+1;j++){//输出扫描的起始点及以后的k个元素
System.out.print(str.charAt(j));
}
System.out.print('\t');
}
}
}

}


运行结果:

a  b  c  d  e  f  g  ab  bc  cd  de  ef  fg  abc  bcd  cde  def  efg  abcd  bcde  cdef  defg  abcde  bcdef  cdefg  abcdef  bcdefg  abcdefg



举报

相关推荐

0 条评论