• 大小: 15.61MB
    文件类型: .rar
    金币: 2
    下载: 0 次
    发布日期: 2024-01-31
  • 语言: Java
  • 标签:

资源简介

包含pdf文件和所有源代码。 本书揭示了Java程序员如何创建高质量软件的奥秘。Herbert Schildt和James Holmes两位编程大师通过将Java应用于某些有趣、实用的计算问题中,全面展示了Java语言的强大功能、敏捷性、多样性和艺术性。本书各章内容分别涉及到Java精髓、递归下降的表达式解析器、用Java实现语言解释器、用Java创建下载管理器、用Java实现E_mail客户端和Internet搜索、用Java修饰HTML、显示统计图表、金融应用中的Applet和Servlet、基于AI的问题求解等,每章给出的示例代码都可以直接运行,无需修改,相信读者能够通过研读本书大大提高自己的Java开发能力。

资源截图

代码片段和文件信息

// Find connections using a breadth-first search.
import java.util.*;
import java.io.*;

// Flight information.
class FlightInfo {
  String from;
  String to;
  int distance;
  boolean skip; // used in backtracking

  FlightInfo(String f String t int d) {
    from = f;
    to = t;
    distance = d;
    skip = false;
  }
}

class Breadth {
  final int MAX = 100;

  // This array holds the flight information.
  FlightInfo flights[] = new FlightInfo[MAX]; 

  int numFlights = 0; // number of entries in flight array

  Stack btStack = new Stack(); // backtrack stack

  public static void main(String args[])
  {
    String to from;
    Breadth ob = new Breadth();
    BufferedReader br = new 
      BufferedReader(new InputStreamReader(System.in)); 
 
    ob.setup();  

    try { 
      System.out.print(“From? “);
      from = br.readLine(); 
      System.out.print(“To? “);
      to = br.readLine(); 

      ob.isflight(from to);

      if(ob.btStack.size() != 0)
        ob.route(to);
    } catch (IOException exc) { 
      System.out.println(“Error on input.“);
    }
  }
  
  // Initialize the flight database.
  void setup()
  {
    addFlight(“New York“ “Chicago“ 900);
    addFlight(“Chicago“ “Denver“ 1000);
    addFlight(“New York“ “Toronto“ 500);
    addFlight(“New York“ “Denver“ 1800);
    addFlight(“Toronto“ “Calgary“ 1700);
    addFlight(“Toronto“ “Los Angeles“ 2500);
    addFlight(“Toronto“ “Chicago“ 500);
    addFlight(“Denver“ “Urbana“ 1000);
    addFlight(“Denver“ “Houston“ 1000);
    addFlight(“Houston“ “Los Angeles“ 1500);
    addFlight(“Denver“ “Los Angeles“ 1000);
  }
  
  // Put flights into the database.
  void addFlight(String from String to int dist)
  {  
    if(numFlights < MAX) {
      flights[numFlights] =
        new FlightInfo(from to dist);

      numFlights++;
    }
    else System.out.println(“Flight database full.\n“);
  }

  // Show the route and total distance.
  void route(String to)
  {
    Stack rev = new Stack();
    int dist = 0;
    FlightInfo f;
    int num = btStack.size();

    // Reverse the stack to display route.
    for(int i=0; i < num; i++) 
      rev.push(btStack.pop());

    for(int i=0; i < num; i++) {
      f = (FlightInfo) rev.pop();
      System.out.print(f.from + “ to “);
      dist += f.distance;
    }

    System.out.println(to);
    System.out.println(“Distance is “ + dist);
  }

  /* If there is a flight between from and to
     return the distance of flight;
     otherwise return 0. */
  int match(String from String to)
  {
    for(int i=numFlights-1; i > -1; i--) {
      if(flights[i].from.equals(from) &&
         flights[i].to.equals(to) &&
         !flights[i].skip)
      {
        flights[i].skip = true; // prevent reuse
        return flights[i].distance;
      }
    }

    return 0; // not found 
  }
  
  // Given from find any connection.

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     103062  2009-11-04 18:30  全书图片\00000001.jpg

     文件     127216  2009-11-04 18:30  全书图片\00000002.jpg

     文件       4100  2009-11-04 18:30  全书图片\00000003.tif

     文件      24172  2009-11-04 18:30  全书图片\00000004.tif

     文件      29020  2009-11-04 18:30  全书图片\00000005.tif

     文件       7076  2009-11-04 18:30  全书图片\00000006.tif

     文件      27362  2009-11-04 18:30  全书图片\00000007.tif

     文件       7046  2009-11-04 18:30  全书图片\00000008.tif

     文件      23800  2009-11-04 18:30  全书图片\00000009.tif

     文件      23358  2009-11-04 18:30  全书图片\00000010.tif

     文件       3610  2009-11-04 18:30  全书图片\00000011.tif

     文件      16878  2009-11-04 18:30  全书图片\00000012.tif

     文件      17866  2009-11-04 18:30  全书图片\00000013.tif

     文件      18180  2009-11-04 18:30  全书图片\00000014.tif

     文件      19442  2009-11-04 18:30  全书图片\00000015.tif

     文件      19398  2009-11-04 18:30  全书图片\00000016.tif

     文件      10438  2009-11-04 18:30  全书图片\00000017.tif

     文件      25400  2009-11-04 18:30  全书图片\00000018.tif

     文件      36286  2009-11-04 18:30  全书图片\00000019.tif

     文件      34714  2009-11-04 18:30  全书图片\00000020.tif

     文件      35920  2009-11-04 18:30  全书图片\00000021.tif

     文件      30058  2009-11-04 18:30  全书图片\00000022.tif

     文件      33776  2009-11-04 18:30  全书图片\00000023.tif

     文件      31418  2009-11-04 18:30  全书图片\00000024.tif

     文件       9460  2009-11-04 18:30  全书图片\00000025.tif

     文件      27820  2009-11-04 18:30  全书图片\00000026.tif

     文件      13996  2009-11-04 18:30  全书图片\00000027.tif

     文件      24562  2009-11-04 18:30  全书图片\00000028.tif

     文件      24560  2009-11-04 18:30  全书图片\00000029.tif

     文件      23170  2009-11-04 18:30  全书图片\00000030.tif

............此处省略405个文件信息

评论

共有 条评论