A、B 、C 是 3个字符串。把A中包含的所有B都替换为 C如果替换以后还有 B 就继续替换,直到 A 不包含 B 为止
A、 B 、 C 是 3 个字符串。把 A 中包含的所有 B 都替换为 C ,如果替换以后还有 B 就继续替换,直到 A 不包含 B 为止。
1、请编写程序实现以上功能。不允许使用系统提供的字符串比较、查找和替换函数。
js版代码实现
let a1 = 'aaabbbcccbbbffbbb';
let b1 = 'bbb';
let c1 = 'ddd';
function find(a,b,c){
while(true){//直到a中没有b
let num = a.indexOf(b);//确定a中b的开始下标
console.log(num)
if(num != -1){//查找到
let Aarr = a.split('');//转换成数组
a = '';
let count = 0;
Aarr.map((item,index)=>{
// console.log(item,index);
if(index>=num && index<num+b.length){
if(count == 0){
a += c;
}
count ++;
}else{
a += Aarr[index];
}
})
}else{
return a;
}
}
}
let f = find(a1,b1,c1);
console.log(f);
public class Test1 {
public static void main(String[] args) {
String a = "aabbccbb";
String b = "bb";
String c = "eeee";
a = func(a, b, c);
System.out.println(a);
}
public static String func(String a,String b,String c){
while(true){
int num = a.indexOf(b);
if (num != -1){
char[] a_chars = a.toCharArray();
a = "";
int count = 0;
for (int i = 0; i < a_chars.length; i++){
if (i >= num && i < num + b.length()){
if (count == 0){
a = a + c;
}
count ++;
}else{
a = a + a_chars[i];
}
}
}else{
// System.out.println(a);
return a;
}
}
}
}
X Y Z 是三维坐标系。线段 A B 保持 A 点不动,围绕 Z 轴方向 (红色虚线示意
逆时针旋转( B 点移动到 C 点位置) ),旋转角度相当于在 X Y 平面投影的 30 度 。 求 C 点坐
标。
这题实在不会,请会的在评论区写一下这个解法或者思路,谢谢
本文来自博客园,作者:JackieDYH,转载请注明原文链接:https://www.cnblogs.com/JackieDYH/p/17634530.html