Java基础运算实例教程详解

需积分: 5 0 下载量 48 浏览量 更新于2024-11-11 收藏 430KB ZIP 举报
资源摘要信息:"Java运算,Java实例运算,面向基础.zip"包含了多个与Java编程语言相关的学习资源,特别适合于那些想要学习Java基础和运算概念的初学者。文件名"java_sunjing-master"暗示着该压缩包可能包含了一个名为“sunjing”的项目或者代码库的源代码(在中文中“sunjing”可以理解为“算法”),表明其中可能包含了Java算法的实现,这是一个非常重要的知识点,因为算法是编程的核心组成部分。 以下是该资源可能涵盖的一些知识点: 1. Java基本运算符:这是Java编程中最基础的部分,包括算术运算符(如加、减、乘、除)、关系运算符(如等于、不等于、大于、小于)、逻辑运算符(如与、或、非)以及位运算符(如按位与、按位或、按位非)。学习这些基本运算符对于掌握Java编程至关重要,因为它们是构建更复杂表达式和逻辑的基石。 2. Java运算符的优先级:在Java中,不同的运算符拥有不同的优先级,这意味着在没有括号明确指定顺序的情况下,运算会按照特定的优先级顺序进行。了解和掌握这些优先级规则对于编写正确无误的代码至关重要。 3. Java实例运算:实例运算可能指的是使用Java中的类和对象进行运算。Java是一种面向对象的编程语言,因此理解如何在对象上执行运算,以及如何创建和使用这些对象在程序中进行计算是十分重要的。 4. Java运算的进阶话题:随着学习的深入,学习者可能会接触到更高级的运算概念,例如在Java中的自动类型转换、强制类型转换以及运算中可能出现的类型提升等。这些知识点有助于深入理解Java的类型系统和如何在不同的数据类型之间进行操作。 5. Java算法实现:资源中提到的“sunjing”可能表明了包含了一些基础算法的实现,这可能涵盖了排序算法、搜索算法、递归算法等。这些算法实现通常是帮助初学者理解算法概念和编程思维的起点,对于提高解决问题的能力具有重要意义。 6. Java编程环境的搭建:为了使用Java进行实例运算和算法实现,学习者需要了解如何搭建Java开发环境,包括安装JDK(Java开发工具包)、配置环境变量、使用IDE(集成开发环境)等。 7. 编写测试代码:通过编写测试代码来验证运算结果的正确性是学习Java的重要一环。学习如何使用JUnit或其他测试框架来编写测试用例是提高代码质量和编程能力的关键步骤。 8. 理解Java的数据类型:包括基本数据类型(如int、double、char等)和引用数据类型(如String、数组和类的实例),了解它们在内存中的表示和使用时需要注意的事项,有助于更好地进行运算和算法开发。 以上知识点的介绍,旨在为初学者提供一个关于“Java运算,Java实例运算,面向基础.zip”资源的详细概览。学习这些内容将为初学者打下扎实的Java编程基础,使他们能够在未来的学习和工作中更加得心应手。

import tensorflow as tf from tensorflow.keras.layers import Dense, Flatten, Conv2D, MaxPool2D, Dropoutfrom tensorflow.keras import Model​# 在GPU上运算时,因为cuDNN库本身也有自己的随机数生成器,所以即使tf设置了seed,也不会每次得到相同的结果tf.random.set_seed(100)​mnist = tf.keras.datasets.mnist(X_train, y_train), (X_test, y_test) = mnist.load_data()X_train, X_test = X_train/255.0, X_test/255.0​# 将特征数据集从(N,32,32)转变成(N,32,32,1),因为Conv2D需要(NHWC)四阶张量结构X_train = X_train[..., tf.newaxis]    X_test = X_test[..., tf.newaxis]​batch_size = 64# 手动生成mini_batch数据集train_ds = tf.data.Dataset.from_tensor_slices((X_train, y_train)).shuffle(10000).batch(batch_size)test_ds = tf.data.Dataset.from_tensor_slices((X_test, y_test)).batch(batch_size)​class Deep_CNN_Model(Model):    def __init__(self):        super(Deep_CNN_Model, self).__init__()        self.conv1 = Conv2D(32, 5, activation='relu')        self.pool1 = MaxPool2D()        self.conv2 = Conv2D(64, 5, activation='relu')        self.pool2 = MaxPool2D()        self.flatten = Flatten()        self.d1 = Dense(128, activation='relu')        self.dropout = Dropout(0.2)        self.d2 = Dense(10, activation='softmax')        def call(self, X):    # 无需在此处增加training参数状态。只需要在调用Model.call时,传递training参数即可        X = self.conv1(X)        X = self.pool1(X)        X = self.conv2(X)        X = self.pool2(X)        X = self.flatten(X)        X = self.d1(X)        X = self.dropout(X)   # 无需在此处设置training状态。只需要在调用Model.call时,传递training参数即可        return self.d2(X)​model = Deep_CNN_Model()loss_object = tf.keras.losses.SparseCategoricalCrossentropy()optimizer = tf.keras.optimizers.Adam()​train_loss = tf.keras.metrics.Mean(name='train_loss')train_accuracy = tf.keras.metrics.SparseCategoricalAccuracy(name='train_accuracy')test_loss = tf.keras.metrics.Mean(name='test_loss')test_accuracy = tf.keras.metrics.SparseCategoricalAccuracy(name='test_accuracy')​# TODO:定义单批次的训练和预测操作@tf.functiondef train_step(images, labels):       ......    @tf.functiondef test_step(images, labels):       ......    # TODO:执行完整的训练过程EPOCHS = 10for epoch in range(EPOCHS)补全代码

2023-06-13 上传

import deap import random from deap import base, creator, tools, algorithms import numpy as np import pandas as pd # 参数 stations = 30 start_end_stations = [1, 2, 5, 8, 10, 14, 17, 18, 21, 22, 25, 26, 27, 30] min_interval = 108 min_stopping_time = 20 max_stopping_time = 120 passengers_per_train = 1860 min_small_loop_stations = 3 max_small_loop_stations = 24 average_boarding_time = 0.04 # 使用 ExcelFile ,通过将 xls 或者 xlsx 路径传入,生成一个实例 stations_kilo1 = pd.read_excel(r'D:\桌面\附件2:区间运行时间(1).xlsx', sheet_name="Sheet1") stations_kilo2 = pd.read_excel(r'D:\桌面\附件3:OD客流数据(1).xlsx', sheet_name="Sheet1") stations_kilo3 = pd.read_excel(r'D:\桌面\附件4:断面客流数据.xlsx', sheet_name="Sheet1") print(stations_kilo1) print(stations_kilo2) print(stations_kilo3) # 适应度函数 def fitness_function(individual): big_loop_trains, small_loop_trains, small_loop_start, small_loop_end = individual small_loop_length = small_loop_end - small_loop_start if small_loop_length < min_small_loop_stations or small_loop_length > max_small_loop_stations: return 1e9, cost = (big_loop_trains + small_loop_trains) * (stations - 1) * min_interval + average_boarding_time * passengers_per_train * (big_loop_trains + small_loop_trains) return cost, # 创建适应度和个体类 creator.create("FitnessMin", base.Fitness, weights=(-1.0,)) creator.create("Individual", list, fitness=creator.FitnessMin) # 注册初始化函数 toolbox = base.Toolbox() toolbox.register("big_loop_trains", random.randint, 1, 10) toolbox.register("small_loop_trains", random.randint, 1, 10) toolbox.register("small_loop_start", random.choice, start_end_stations) toolbox.register("small_loop_end", random.choice, start_end_stations) toolbox.register("individual", tools.initCycle, creator.Individual, (toolbox.big_loop_trains, toolbox.small_loop_trains, toolbox.small_loop_start, toolbox.small_loop_end), n=1) toolbox.register("population", tools.initRepeat, list, toolbox.individual) # 注册遗传算法操作 toolbox.register("mate", tools.cxTwoPoint) toolbox.register("mutate", tools.mutUniformInt, low=[1, 1, min(start_end_stations), min(start_end_stations)], up=[10, 10, max(start_end_stations), max(start_end_stations)], indpb=0.5) toolbox.register("select", tools.selBest) toolbox.register("evaluate", fitness_function) # 设置遗传算法参数 population_size = 100 crossover_probability = 0.8 mutation_probability = 0.2 num_generations = 100 # 初始化种群 population = toolbox.population(n=population_size) # 进化 for gen in range(num_generations): offspring = algorithms.varAnd(population, toolbox, cxpb=crossover_probability, mutpb=mutation_probability) fits = toolbox.map(toolbox.evaluate, offspring) for fit, ind in zip(fits, offspring): ind.fitness.values = fit population = toolbox.select(offspring, k=len(population)) # 找到最佳个体 best_individual = tools.selBest(population, k=1)[0] # 解码最佳个体 big_loop_trains, small_loop_trains, small_loop_start, small_loop_end = best_individual # 输出结果 print("Big Loop Trains:", big_loop_trains) print("Small Loop Trains:", small_loop_trains) print("Small Loop Start Station:", small_loop_start) print("Small Loop End Station:", small_loop_end)分析代码

2023-04-22 上传