⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 nextarray.java

📁 数据结构的一次实验(java语言)
💻 JAVA
字号:
/*
姓名:魏然
班级:计算机04-2
学号:040824221
完成日期:2006.11.2
*/
import java.io.*;
import java.util.*;
public class NextArray
{
  public static void main(String[] args) throws Exception
 {  	
    Boolean b=true;                    //定义布尔变量
    String s1;
    while(b)
  {
    
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    System.out.println("请输入待处理的字符串");
    
    int i,j,m;
    s1 = br.readLine();                //读取一行输入的数据
    int len=s1.length();
    char a[]=new char[len];            //定义一个与字符串长度相同的字符数组
    int next[]=new int[len];           //定义next数组
    s1.getChars(0,len,a,0);            //把输入的字符串转换成字符数组

    if (s1.equals("finish")) {return;}   //  退出循环
    else  
     { if(s1==null||s1.length()==0)     //判断输入的字符串是否为空或者没有长度
          {
          System.out.println("输入错误,请重新输入");
          System.out.println("请输入待处理的字符串");
          s1 = br.readLine();  
          }
   
       else 
         {                                
      	   s1.getChars(0,len,a,0);      //把输入的字符串转换成字符数组
           m=1;
           next[0]=0;
           j=0;
           while(m<len)                 //求next函数
              {
               if(j==0||a[m-1]==a[j-1]) {++m;++j;next[m-1]=j;}
               else j=next[j-1];
              }
           System.out.println("您输入字符串的next函数为:"); 
           for(i=0;i<len;i++) {System.out.println(next[i]);} //输出next函数
                       
          }     
       }                
  }
 }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -