怎么判断一个字符串集合在一个集合里

给一个集合,判断这个集合的是否可以串连串连的规则,前一个字符串的尾部和后一个字符串的开头相同,即可串连比如集合为如下几个字符串01 12 23 34 45这个集合可串连,串连的结果为 012345但这个集合是最理想的情况,实际情况是所有元素是无序的,可串连的两个元素并不保证相邻,也并不保证先后顺序与串连结果一致,而且串连结果也可能并不唯一。比如22 22 22 21 12可以串连成 等如何快速的判断出是否可串连,并列出所有的串连方式呢我想到的方法只是每种排列方式都去判断一下,但这样效率太低,如果一个集合的元素个数为n,那就是判断n!次--------------------------------------------------------------分别计算0-9这10个数字出现在第一位和第二位的次数 用来判断是否有可行的解。只有次数完全相等 或者有两个数字分别差了1的时候 才有可行解。------解决方案--------------------------------------------------------可以转为汉米尔顿回路问题NP的。1388人阅读
JavaSE笔记(32)
一、使用Map集合写的字符串中字符统计功能函数。
import java.util.HashM
import java.util.I
import java.util.Map.E
public class MapTest {
* @param args
public static void main(String[] args) {
String str
= &jdhflkjsdhfsdfgmsr&;
String s = getCount(str);
System.out.println(s);
* 想将字符串编程字符数组
* 在遍历数组进行查表,如果存在,则将将其值取出来加一。在存进去。
如果不存在,将其为键 值为0添加进去。
* @param str
public static String getCount(String str) {
char []chi = str.toCharArray();
HashMap&Character,Integer& hs = new HashMap&Character,Integer&();
for (int i = 0; i & chi. i++) {
if(hs.get(chi[i])==null)
hs.put(chi[i], 1);
hs.put(chi[i], hs.get(chi[i])+1);
return maptoString(hs);
private static String maptoString(HashMap&Character, Integer& hs) {
StringBuilder sb = new StringBuilder();
Iterator&Entry&Character,Integer&& it = hs.entrySet().iterator();
while(it.hasNext()){
Entry&Character,Integer& hm = it.next();
Character key = hm.getKey();
value = hm.getValue();
sb.append(key+&(&+value+&) &);
return sb.toString();
关于GUI的初学小程序。
创建Frame(框架)window(窗口)。设置其的位置及大小。
添加按钮。及使用浮动效果添加按钮。以及创建窗口监视器。还有创建按钮活动。
程序如下:
import java.awt.B
import java.awt.FlowL
import java.awt.F
import java.awt.event.ActionE
import java.awt.event.ActionL
import java.awt.event.WindowA
import java.awt.event.WindowE
public class FrameDemo {
* @param args
public static void main(String[] args) {
Frame f = new Frame(&My firstFrame&);//窗口标题
/*f.setSize(500, 400);//设置窗口大小,
f.setLocation(600, 200);//设置窗口位置。
f.setBounds(600, 200, 500, 400);//等价于上边两行,设置位置,大小。
f.setLayout(new FlowLayout());//设置流式布局。
//创建一个按钮,并为按钮添加文字。
Button but = new Button(&一个按钮&);
//将按钮添加到窗口中
f.add(but);
WindowAdapter wa = new WindowAdapter() {//创建一个窗体监听器,并实现关闭功能。
public void windowClosing(WindowEvent e) {//关闭功能。
System.out.println(&closeing......&);
System.exit(0);
but.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.out.println(&Button run........&);
f.addWindowListener(wa);//将窗口监听器和窗体联系起来。
f.setVisible(true);//设置显示状态。
System.out.println(&over!&);
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:374867次
积分:4529
积分:4529
排名:第4248名
原创:138篇
评论:45条
(1)(4)(3)(1)(1)(2)(2)(2)(2)(4)(4)(10)(3)(1)(5)(1)(1)(2)(1)(2)(3)(1)(26)(7)(5)(13)(3)(1)(14)(15)作业帮-是干什么的呢?让我来告诉你
C++大神帮忙编写下这题编写一个程序,从已给的字符集合中生成所有可能的字符串。 例如:已知一个字符串“abc”,你编写的程序必须输出:“abc”,“acb”,“bac”,“bca”,“cab”和“cba”。在输入的字符串中,有些字符可能出现多次,你的程序所产生的相同的字符串只能出现一次,并按字典顺序排列。Input:输入只包含一组数据。第一行包含一个正整数N(1
这个写可能需要些时间,我给你大致的思维方向吧!这个程序帮你要用到2维数组,比如定义啊a[i][j];先竖排来冒泡(if(a[i][j])
为您推荐:
扫描下载二维码如何使用matlab获知某个字符是否存在于一个字符集合内?_百度知道
如何使用matlab获知某个字符是否存在于一个字符集合内?
1、字符串以矩阵方式存储。你可以把字符串理解成数组。用sz=size()得到目标字符串的大小,用循环判断就行了。具体来说就是找到已有字符串中和目标字符串第一个元素相同的元素位置,判断原有字符串sz大小的元素是否与目标字符串相同。查找到一定位置就停止。2、可使用strfind函数。S = 'Find the starting indices of the pattern string';strfind(S, 'in')ans =
453、也可以使用regexp函数。str = 'bat cat can car COAT court cut ct CAT-scan';regexp(str, 'c[aeiou]+t')ans =
其他类似问题
为您推荐:
提问者采纳
s=&#39,'V1'。 示例(例子中用的是字符串,'V2&#39,'V1&#39,当然字符更不在话下);;S={'V3'V1'exact'pos=strmatch(s;使用strmatch函数;;},S,&#39
提问者评价
这个的确是好办法
其他2条回答
,'a&#39,'c','vv={&#39,&#39,'for i = 1;;c&#39,';;ind=[];,V1) )
ind=[ind i];f';d'c&#39:length(vv)
if( strcmp(vv{i};a&#39V1='};b&#39
存在。使用strmatch函数。示例(例子中用的是字符串,当然字符更不在话下):s='V1';S={'V1','V2','V3','V1'};pos=strmatch(s,S,'exact')
matlab的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁}

我要回帖

更多关于 list集合转换成字符串 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信