6.6号练习

单词接龙
 
从字母开始读,然后走单词,打印输出
 
package lianxi;
import java.io.FileReader;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class Fine {
 public static void main(String[] args)
 {
  String now="";
  List<String> l=new ArrayList();
  List<List<String>> ls=new ArrayList<List<String>>();
  int l_i=0,ls_i=0;
  int i=0,t=0,flag=0,max=0;
  try
  {
   FileReader fr=new FileReader("d:\\input.txt");
   Scanner in =new Scanner(fr);
   //初始化
   //读取
   while(in.hasNext())
   {
    now=in.next();
    System.out.println(now);
    if(flag==0)
    {
     l=new ArrayList();
     l.add(now);
     ls.add(l);
     flag=1;
    }
    else
    {
     for(i=0;i<ls.size();i++)//遍历所有表
     {
      if(ifLian(ls.get(i).get(ls.get(i).size()-1),now))//首尾相连
      {
       l=new ArrayList();
       l=ls.get(i);
       l.add(now);
       ls.set(i, l);
      }
     }
     l=new ArrayList();
     l.add(now);
     ls.add(l);
    }
    
   }
   
   //寻找最大
   max=ls.get(0).size();
   for(i=0;i<ls.size();i++)
   {
    if(max<ls.get(i).size())
    {
     max=ls.get(i).size();
    }
   }
   
   for(i=0;i<ls.size();i++)
   {
    for(t=0;t<ls.get(i).size();t++)
    {
     System.out.print(ls.get(i).get(t)+" ");
    }
    System.out.println();
   }
   PrintWriter fw=new PrintWriter("d:\\output.txt");
   for(i=0;i<ls.get(max).size();i++)
   {
    fw.println(ls.get(i)+" ");
   }
   fw.flush();
   fw.close();
  }
  catch(Exception e)
  {
   e.printStackTrace();
  }
  
 }
 public static boolean ifLian(String a,String b)//a的结尾与b的开头是否一致   apple
 {
  if(a.charAt(a.length()-1)==b.charAt(0))
  {
   return true;
  }
  else
  {
   return false;
  }
   
   
 }
}
 

猜你喜欢

转载自www.cnblogs.com/mitang0-0/p/10986256.html
6.6
今日推荐