java自写代码--顺序串、链串、二维数组

本文详细介绍了如何使用Java实现顺序串、链串和二维数组的各种操作,包括串赋值、求串长、串比较、串连结、子串判断、BF算法、链串定义以及二维数组的初始化、销毁、修改和查找元素。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一、顺序串

二、链串

三、数组

一、顺序串

包含串赋值、求串长、串比较、串连结、求子串、判断串是否为空、BF算法判断子串在主串中的位置、串替换

//顺序串的相关基本操作
public class SString {
	
	//串比较
	public void StrCompare(String a,String b) {
		if(a==b) {
			System.out.println("Equal!");
		}else {
			System.out.println("Not Equal!");
		}
	}
	
	//串连结
	public void Concat(String a,String b) {
		String str3 = a+b;
		System.out.println(str3);
	}
	
	//求子串
	public void SubString(String a) {
		for(int k=1;k<a.length();k++) {
			if(k>0) {
				System.out.print(a.substring(0, k)+" ");//得到从i号位置到j号位置前的字符串
				}
		}

		for(int i=1;i<a.length();i++) {
			for(int j=1;j<a.length()+1;j++) {
				if(i<j) {
					System.out.print(a.substring(i, j)+" ");//得到从i号位置到j号位置前的字符串
				}
			}
		}
	}
	
	//判断串是否空
	public void StrEmpty(String a) {
		if(a==null) {
			System.out.println("NULL!");
		}else {
			System.out.println("NOT NULL!");
		}
	}
	
//	//清空串
//	public void ClearString(String a) {
//		if(a==null) {
//			System.out.println("已清空!");
//		}else {
//			a = a.replaceFirst(a.substring(0, a.length()-1)," ");//得到从i号位置到j号位置前的字符串
//			}
//			System.out.println("现在的串为空串!");
//		}
	
	//子串的位置
	public void Index(String a,String c) {
		
		char stra[] = new char[a.length()];//将字符串存入数组中,下标从0开始
		char strc[] = new char[c.length()];
		
		for(int m=0;m<a.length();m++) {
			stra[m] = a.charAt(m);
//			System.out.print(str[k]+" ");
		}
		
		for(int n=0;n<c.length();n++) {
			strc[n] = c.charAt(n);
		}
		
		//BF算法
		int i=0;
		int j=0;
		
		while((j<=c.length()-1)&&(i<=a.length()-1)) {
			if(stra[i]==strc[j]) {
				i&
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值