首页 > 其他分享 >2024.03.05

2024.03.05

时间:2024-03-05 19:55:28浏览次数:22  
标签:java String 2024.03 05 int io new import

        今天在软件工程课程上主要进行了学习方法,与老师的教学方法与目标的分享,告诉我们要在“做中学”,还给我们留了作业的目标,这学期各个阶段

应该的学习的内容(包括每天一条学习进度表格)。最后进行了课堂的练习,主要是

计算最长英语单词链

 

一个文本文件中有N 个不同的英语单词, 我们能否写一个程序,快速找出最长的能首尾相连的英语单词链,每个单词最多只能用一次。

 

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.text.DecimalFormat;
import java.text.NumberFormat;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Scanner;
public class WordConnect {
static int N=5;
static String b[]=new String[500];
public static void main(String[] args)
    {


        String sz=writeFromFile.readTxtFile("input3.txt");
        String ltxt=null;
        if(sz==null)
        {
            System.out.println("找不到指定的文件");
        }
        else if(sz=="kong")
        {
            System.out.println("文件为空!");
        }

        else
        {
            System.out.println(ltxt=StatList1(sz));

            select(b);
        }

        try {
        writeFromFile.daochu(ltxt);
        } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
        }



    }
public static int woor(String a)
    {
        int n=0;
        File ctoFile = new File("stopword.txt");
        InputStreamReader rdCto;
        try {
            rdCto = new InputStreamReader(new FileInputStream(ctoFile));
            BufferedReader bfReader = new BufferedReader(rdCto);
            String txtline = null;
            try {
                while ((txtline = bfReader.readLine()) != null)
                {
                    if(txtline.equals(a))
                        {
                            n=1;
                        }
                }
                bfReader.close();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return n;
    }
public static ArrayList<String> getFiles(String path) {
        ArrayList<String> files = new ArrayList<String>();
        File file = new File(path);
        File[] tempList = file.listFiles();
        for (int i = 0; i < tempList.length; i++) {
            if (tempList[i].isFile()) {
                files.add(tempList[i].toString());
            }
            if (tempList[i].isDirectory()) {
            }
        }
        return files;
    }
public static String StatList1(String str) {
        StringBuffer sb = new StringBuffer();
        HashMap<String ,Integer> has = new HashMap<String ,Integer> ();
        String[] slist = str.split("[^a-zA-Z\']+");
        for (int i = 0; i < slist.length; i++)
        {
            if (!has.containsKey(slist[i]))
            {
                   has.put(slist[i], 1);
            }
            else
            {
                   has.put(slist[i],has.get(slist[i])+1 );
            }
        }
        Iterator<String> iterator = has.keySet().iterator();
        String a[]=new String[500];
        int s[]=new int[500];
        int judge;
        int n=400;
        for(int i=0;i<n;i++)
        {
            iterator = has.keySet().iterator();
            while(iterator.hasNext())
            {
                String word = (String) iterator.next();
                if(s[i]<has.get(word))
                {
                    s[i]=has.get(word);
                    a[i]=word;
                    b[i]=word;
                }
             }
            judge=woor(a[i]);
            if(judge==1)
            {
                n++;
                has.remove(a[i]);
            }
            else
            {
             has.remove(a[i]);
            }
        }
             return sb.toString();
        }
public static void select(String b[])
    {
        List<Object> list=new ArrayList<>();
        int q=0;
        int n0=0;
        for(int i=0;i<b.length;i++)
        {
            if(b[i]!=null)
            {
                n0++;
            }
        }
        if(n0==1)
        {
            System.out.println("只有一个单词");
        }
        else
        {
            String c="and";
            q=c.length();
            char n1=c.charAt(0);
            char n2=c.charAt(q-1);
            list.add(c);
            for(int j=0;j<b.length;j++)
            {
                String w=b[j];
                if(w!=null)
                {
                    int e=w.length();
                    char n3=w.charAt(0);
                    char n4=w.charAt(e-1);
                    if(n2==n3)
                    {
                        list.add(w);
                        n1=n3;
                        n2=n4;
                    }
                }
            }
            String l=null;
            if(list.size()==1)
            {
                System.out.println("没有首尾相连");
            }
            else
            {
            for(int i=0;i<list.size();i++)
            {
                l=l+list.get(i)+"->";
                System.out.println(list.get(i)+"->");
            }
            try {
                daochu(l);
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            }
        }
    }
    public static void daochu(String a) throws IOException
    {
        File file =new File("output1.txt");
        Writer out =new FileWriter(file);
        String data=a;
        out.write(data);
        out.close();
    }

学习进度(第一天)

所花时间(包括上课)

5h

代码量(行)

110行

博客量(篇)

1篇

了解到的知识点

提取文本(txt)以及将文本输出,“做中学”,Android studio 虚拟机的配置
   

 

标签:java,String,2024.03,05,int,io,new,import
From: https://www.cnblogs.com/dmx-03/p/18054778

相关文章

  • 2024-03-05 闲话
    昨天晚上南开量化社团群里发了一个小红书链接,title是微观博易终面记录。这样的小红书群里分享了很多已经,我漠然地点进去,开幕雷击:Lrf找工记。然后发现nc哥已经飞黄腾达了。然后思考了一下qd可能和competitiveprogramming还是intersection多一些。LoRAHub做法是对于一......
  • day 05-3 数据类型(字符串)
    3.3公共功能1.字符串相加v1="linzai"+"是个好人"print(v1)#linzai是个好人2.字符串相乘v1="linzai"*3print(v1)#linzailinzailinzai3.计算字符串的长度v1="linzai"data=len(v1)#计算字符串的长度print(data)#64.获取字符串的字符,索引字符......
  • flask_05days __蓝图
    蓝图#blueprint翻译过来的---》把项目分到多个py文件---》以后常用 -划分项目目录 蓝图小项目目录划分(只有一个app)大型项目-目录划分(多个app)——————————————————————————蓝图就是把我们应用目录的模块注册到Flask类,充当一个中间人的角色通过......
  • day05-请求响应&分层耦合
    请求响应bs架构/cs架构bs架构:浏览器/服务器架构模式cs架构:客户端/服务器架构模式请求简单参数原始方式:HttpServletRequest对象获取SpringBoot:形参接收传递的简单参数(只需参数名与形参变量名保持一致即可,如果不一致使用RequestParam注解手动映射)实体参数声明对象,会自动......
  • P2330 [SCOI2005] 繁忙的都市
    原题链接法一:运用结论 最小生成树也是最小瓶颈树,但最小瓶颈树不一定是最小生成树。所以这题我们可以直接套用最小生成树模板#include<bits/stdc++.h>usingnamespacestd;structG{intfrom,to,value;};Ga[8005];intfather[305],n,m;voidbuild(){for(in......
  • UniDateTimePicker日期转换问题---“2024-03-05” is not a date and time
    这个问题是由于操作系统的日期格式与用StrToDate给UniDateTimePicker.dateTime赋值格式不一致造成的。注意:这个问题在使用UniGui的Standalone模式下没问题,在Windowsservice模式下会出现上述问题。可以在系统的主程序中设置一下系统日期格式:procedureSetDateTimeFormat();var......
  • 程序是怎样跑起来的。05
    第五章的内容让人更深刻地理解了程序的控制流程,尤其是条件判断和循环结构的重要性。这一章节详细介绍了如何通过这些控制结构来管理程序执行的逻辑流程,使得程序能够根据不同的情况做出相应的决策或者重复执行某些任务。阅读第五章之后,可以有以下几点观后感:对程序逻辑控制的深入......
  • python接口自动化系列(05):获取常用变量
     本系列汇总,请查看这里:https://www.cnblogs.com/uncleyong/p/18033074实现目标获取常用变量,方便后面解析初始化sql或者请求参数的时候将常用变量占位符替换为实际值。 添加常用变量数据文件data目录下创建variable.yaml 内容:---'#{username}':tester'#{password_......
  • 3121005947
    这个作业属于哪个课程软件工程2024-双学位(广东工业大学)这个作业要求在哪里软件工程第一次作业这个作业的目标学习Markdown语言、撰写博客目录软件工程第一次作业1.评估自己1.1个人介绍1.2当前值1.3项目经历2.展望未来2.1阅读《构建之法》2.2未来的职......
  • maven 包管理平台-05-multi module 多模块
    拓展阅读maven包管理平台-01-maven入门介绍+Maven、Gradle、Ant、Ivy、Bazel和SBT的详细对比表格maven包管理平台-02-windows安装配置+mac安装配置maven包管理平台-03-mavenprojectmaven项目的创建入门maven包管理平台-04-mavenarchetype项目原型maven包......