关于字符串实现交叉合并字符串

简介:

交叉合并:如字符串一为:abcd  字符串二为:1234
则结果为:a1b2c3d4

复制代码
 1 import java.util.ArrayList;
 2 import java.util.List;
 3 
 4 public class A {
 5     public static void main(String[] args) {
 6         String a[] ={"a","b","c"};
 7         String b[] ={"1","2","3"};
 8         CombineTwoArray(a, b);
 9         System.out.println(CombineTwoArray(a, b));
10     }
11 
12     public static List<String> CombineTwoArray(String[] first, String[] second) {
13         List<String> outlist = new ArrayList<String>();
14         int index = 0;
15         while (index < first.length && index < second.length) {
16             outlist.add(first[index]);
17             outlist.add(second[index]);
18             ++index;
19         }
20         if (index >= first.length) {
21             for (int i = index; i < second.length; i++) {
22                 outlist.add(second[i]);
23             }
24         } else {
25             for (int i = index; i < first.length; i++) {
26                 outlist.add(first[i]);
27             }
28         }
29         return outlist;
30     }
31 }
复制代码

用js的写法:

复制代码
 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 2 <html xmlns="http://www.w3.org/1999/xhtml">
 3   <head>    
 4     <title>第十五题:交叉合并字符串</title>
 5     <style>
 6         #form{
 7             margin: 0 auto;
 8             width:500px;
 9             top:100px;
10             height:300px;
11         }
12     </style>
13     <script type="text/javascript">
14         var reg = "^[A-Za-z0-9]+$";
15         function check(){
16             var str1 =document.all.str1.value;
17             var str2 =document.all.str2.value;
18             if(str1==""){
19                 alert("字符串一不允许为空!");
20                 document.all.str1.focus();
21                 return;
22             }else if(!/^[A-Za-z0-9]+$/.test(str1)){
23                 alert("字符串一只能是数字和字母的组合");
24                 document.all.str1.focus();
25                 return;
26             }else if(str2==""){
27                 alert("字符串二不允许为空!");
28                 document.all.str2.focus();
29                 return;
30             }else if(!/^[A-Za-z0-9]+$/.test(str2)){
31                 alert("字符串二只能是数字和字母的组合");
32                 document.all.str2.focus();
33                 return;
34             }
35             var string="";
36             var font1 = "<font style='color:red;'>";
37             var font2 = "<font style='color:blue;'>";
38             var fontend = "</font>";
39             if(str1.length>=str2.length){
40                 for(var i =0;i<str1.length;i++){
41                     if(i< str2.length){
42                         string += font1+str1[i]+fontend+ font2+ str2[i]+fontend;
43                     }else{
44                         string += font1+str1[i];
45                     }
46                      
47                 }
48             }else{
49                 for(var i =0;i<str2.length;i++){
50                     if(i< str1.length){
51                         string += font1+str1[i]+fontend + font2+str2[i]+fontend;
52                     }else{
53                         string += font2+str2[i]+fontend;
54                     }
55                      
56                 }
57             }
58             document.all.result.innerHTML = string;
59         }
60     </script>
61   </head>
62    
63   <body>
64         <div id="form">
65                 <center><h2>第十五题:交叉合并字符串</h2></center>
66                 字符串1:<input type="text" id="str1"/><br/>
67                 字符串2:<input type="text" id="str2"/><br/>
68                 <input type="button" value="交叉合并字符串" onclick="check();"/>
69                 <br />
70                 <div id="result"></div>
71         </div>
72          
73   </body>
74 </html>
复制代码

 



本文转自SummerChill博客园博客,原文链接:http://www.cnblogs.com/DreamDrive/p/4094416.html,如需转载请自行联系原作者
相关文章
|
6月前
|
算法 前端开发
100224. 分割数组
100224. 分割数组
40 0
|
6月前
一个16位的数以4位为一组分割,然后将各部分相加获取最终结果。
一个16位的数以4位为一组分割,然后将各部分相加获取最终结果。
|
4月前
去除数组中重复的那个数字
去除数组中重复的那个数字
|
6月前
|
算法 测试技术 编译器
【算法 | 实验18】在字符矩阵中查找给定字符串的所有匹配项
题目描述 题目 在字符矩阵中查找给定字符串的所有匹配项 给定一个M×N字符矩阵,以及一个字符串S,找到在矩阵中所有可能的连续字符组成的S的次数。所谓的连续字符,是指一个字符可以和位于其上下左右,左上左下,右上右下8个方向的字符组成字符串。用回溯法求解。
95 1
|
6月前
1768.交替合并字符串
1768.交替合并字符串
26 0
|
6月前
|
人工智能 自然语言处理 算法
【动态规划】【字符串】【前缀和】1639通过给定词典构造目标字符串的方案数
【动态规划】【字符串】【前缀和】1639通过给定词典构造目标字符串的方案数
|
6月前
字符串,每个里面包含0-N个数字,如3,8,2,编写函数,将两个这样的字符串合并,并且输出的字符串里面没有重复的数字,并从大到小排列.
字符串,每个里面包含0-N个数字,如3,8,2,编写函数,将两个这样的字符串合并,并且输出的字符串里面没有重复的数字,并从大到小排列.
34 0
从排列字符串到排列序列:解析增减字符串匹配问题
题目要求根据给定的字符串 s,构造一个排列序列 perm,其中排列序列中的数字满足以下规则: 如果 perm[i] < perm[i + 1],则对应的字符为 'I'; 如果 perm[i] > perm[i + 1],则对应的字符为 'D'。 我们需要根据字符串 s 中的字符,构造满足上述规则的排列序列 perm。
55 0
|
PHP
php数组学习(1):固定格式的字符串分割成数组后内容去重
php数组学习(1):固定格式的字符串分割成数组后内容去重
53 0
有一个长度是10的数组,数组内有10个人名,要求去掉重复的人名,并输出
有一个长度是10的数组,数组内有10个人名,要求去掉重复的人名,并输出
311 0