黑马程序员技术交流社区

标题: 面试题 [打印本页]

作者: 一二三_aabyf    时间: 2015-8-5 23:49
标题: 面试题
设计一个方法,用于获取一个字符串中指定子串出现的次数。这道题的思路是怎样的?
作者: 小丑    时间: 2015-8-6 14:13
用map集合的键值对来做
作者: 马北剑西    时间: 2015-8-6 14:30
  1. public static int getSubCount(String str,String key)
  2.         {
  3.                 int count = 0;
  4.                 int index = 0;

  5.                 while((index=str.indexOf(key))!=-1)
  6.                 {
  7.                         sop("str="+str);
  8.                         str = str.substring(index+key.length());

  9.                         count++;       
  10.                 }
  11.                 return count;
  12.         }
复制代码

作者: 那些年ii    时间: 2015-8-6 15:59
最简单的就是查表法,将字符转换成字符串数组,之后遍历数组,拿遍历到的字符去查表,如果存在就将数量+1,不存在就置为1,。。我感觉这样最简单,有好的方法可以补充一下
作者: 千山万水    时间: 2015-8-6 20:04
map集合    key传每个字符   value传次数  
作者: zhaoyue    时间: 2015-8-6 21:29
查找,然后截取,然后查找剩下,然后截取,直到查找不到为止
作者: WHY-y    时间: 2015-8-6 21:53
不错,顶起来
作者: 要踏实小伙子    时间: 2015-8-6 22:07
将这个字符串定义为一个数组,每个子串表示他的一个元素,然后用for循环遍历,并判断每遇到所指定子串就加次数加1
作者: 明月刀割芳草    时间: 2015-8-6 22:36
这个不是入学考试的题目吗?




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2