Java二叉树的创建以及遍历

java实现二叉树创建和遍历 今天晚上我学习了java语言的二叉树创建和遍历算法。 实现的机制和上一节课差不多。 代码如下: package 二叉树链表; public class Node { private int value; private Node leftChild; private Node rightChild; public Node(int value) { super(); 阅读详情

1.二叉树的实现

二叉树的实现要比普通树容易,因为其每个节点最多只有两个子节点
其实,二叉树的每个左右子节点仍是一颗二叉树,因此,我们可以使用递归的方式来定义二叉树,二叉树的实现代码如下

public class BinaryTreeNode {
    
    private int data;  //数据
    private BinaryTreeNode leftChirld;  //左孩子
    private BinaryTreeNode rightChirld; //右孩子
    
    public int getData() {
        return data;
    }
    public void setData(int data) {
        this.data = data;
    }
    public BinaryTreeNode getLeftChirld() {
        return leftChirld;
    }
    public void setLeftChirld(BinaryTreeNode leftChirld) {
        this.leftChirld = leftChirld;
    }
    public BinaryTreeNode getRightChirld() {
        return rightChirld;
    }
    public void setRightChirld(BinaryTreeNode rightChirld) {
        this.rightChirld = rightChirld;
    }        
}

这种实现方式称之为二叉树的左右链表表示法,如图所示
在这里插入图片描述

1.1 二叉树的创建

创建二叉树,一般有两种情况:初始化一个根节点或者初始化一棵空二叉树。代码如下:

public class BinaryTree {
    private BinaryTreeNode root;
    
    //初始化二叉树
    public BinaryTree(){}
    
    public BinaryTree(BinaryTreeNode root){
        this.root = root;
    }
    
    public void setRoot(BinaryTreeNode root){
        this.root = root;
    }
    
    public BinaryTreeNode getRoot(){
        return root;
    }
}

2、二叉树的遍历

二叉树的遍历是按照一定的规律来顺序遍历各二叉树节点,使得每个节点都会被访问且仅访问一次。通常二叉树的遍历根据根节点的遍历次序分为:先根遍历、中根遍历、后根遍历。

2.1 先根遍历(PreOrder)

若二叉树为空,则退出,否则进行下面操作

  • 访问根节点
  • 先根遍历左子树
  • 先根遍历右子树
  • 退出

按照先根遍历地方式,遍历如下二叉树,则访问顺序为:A、B、D、H、I、E、J、C、F、G
在这里插入图片描述

    public void PreOrder(BinaryTreeNode node){
        if(node!=null){
            System.out.println(node.getData()); //先访问根节点
            PreOrder(node.getLeftChirld());  //先根遍历左子树
            PreOrder(node.getRightChirld());  //先根遍历右子树
        }
    }

2.2 中根遍历(InOrder)

若二叉树为空,则退出,否则进行下面操作

  • 中根遍历左子树
  • 访问根节点
  • 中根遍历右子树
  • 退出

按照中根遍历地方式,遍历如下二叉树,则访问顺序为:H、D、I、B、J、E、A、F、C、G
在这里插入图片描述

    public void InOrder(BinaryTreeNode node){
        if(node!=null){
            InOrder(node.getLeftChirld());  //中根遍历左子树
            System.out.println(node);    //访问根节点
            InOrder(node.getRightChirld());  //中根遍历右子树
        }
    }

2.3 后根遍历(PostOrder)

若二叉树为空,则退出,否则进行下面操作

  • 后根遍历左子树
  • 后根遍历右子树
  • 访问根节点
  • 退出

按照后根遍历地方式,遍历如下二叉树,则访问顺序为:H、I、D、J、E、B、F、G、C、A
在这里插入图片描述

    public void PostOrder(BinaryTreeNode node){
        if(node!=null){
            PostOrder(node.getLeftChirld());  //后根遍历左子树
            PostOrder(node.getRightChirld());  //后根遍历右子树
            System.out.println(node);   //访问根节点
        }
    }
}
【WRF工具】WRF 模型输出可视化工具 plotfmt 阅读详情

相关推荐

CIFAR-100模型性能对比:Top1与Top5错误率深度解析

本文深度解析了CIFAR-100数据集上Top1与Top5错误率的核心意义与差异。通过对比MobileNet、ResNet、DenseNet等主流模型的性能数据,揭示了模型架构、训练策略及数据集特性如何共同影响这两个关键指标,并为不同应用场景下的模型选择提供了实战指南。

weixin_28224217的博客 339

二叉树(Java实现)

声明:本文部分文章取自于 Java中关于二叉树详解_来学习的小张的博客-优快云博客_java 二叉树原理 更多关于二叉树详情可以点击上面链接 一:树形结构 树是一种非线性的数据结构,它是由n(n>=0)个有限结点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。它具有以下的特点: 有一个特殊的节点,称为根节点,根节点没有前驱节点; 除根节点外,其余节点被分成M(M > 0)个互不相交的集合T1、T2、......、Tm,其中每一个

JiaXingNashishua的博客 1万+

用4690张图片搞定物流仓储难题:手把手教你训练YOLOv8纸箱检测模型(附完整源码)

本文详细介绍了如何利用YOLOv8目标检测技术解决物流仓储中的纸箱识别难题。通过4690张图片构建高质量数据集,提供完整的训练教程和源码,实现98.7%的mAP@0.5准确率。文章涵盖数据采集、模型训练、调参技巧到边缘计算部署的全流程,帮助读者快速构建智能仓储检测系统。

weixin_28717939的博客 377

用java 实现二叉树创建

二叉树是数据结构中的一个重要的概念,二叉树的概念最早由 Linus Torvalds在1958年提出。他给出了一个树形数据结构,可以用来存储二叉树。每个节点的左子树和右子树都是空,中间层是子树。在一个给定的空间中,每一个节点都有两个左右子树。 在 Java中,我们可以用类似的方法来创建二叉树,但是这个方法只支持最简单的二叉树类型。例如,对于下面这种类型的二叉树,它需要四个节点:左子树、右子树和根结点。如果我们想创建一个节点为树根的二叉树,则需要更复杂的方法。 在本文中,我们将介绍如何在 Java中

花生日记 2973

RK3588设备树节点实战:从零配置音频与显示模块(ES8388+DSI0)

本文详细介绍了在RK3588平台上配置音频编解码器ES8388和显示接口DSI0的设备树节点实战。通过具体案例拆解设备树节点的编写逻辑与调试技巧,包括音频路由与声卡配置、DSI控制器基础配置、视频通路路由配置以及电源管理与时钟树设计。文章还提供了调试工具与实战技巧,帮助开发者快速解决常见问题。

weixin_42525637的博客 351

Vivado固化程序与Flash型号添加实战指南

本文详细介绍了Vivado程序固化到Flash芯片的完整流程,包括基础操作、Flash型号添加方法及疑难问题排查。针对Vivado官方支持列表缺失的Flash型号,提供了手动添加配置的详细步骤和参数说明,并分享了高级技巧与安全操作建议,帮助开发者高效完成FPGA程序固化。

weixin_29291573的博客 565

【数据结构】用Java实现一棵二叉树

这里给出从前序与中序遍历序列构造二叉树、从中序与后序遍历序列构造二叉树以及二叉树的基本操作。

qq_53869058的博客 4665

PLSQL Developer新手必看:如何避免安装过程中的常见坑

本文为PL/SQL Developer新手提供了详尽的安装与配置避坑指南。从版本选择、注册码使用、汉化包安装到Oracle客户端连接配置,逐一解析常见问题并提供解决方案,帮助开发者快速搭建稳定的PL/SQL开发环境,顺利开启Oracle数据库编程工作。

g9h0i1的博客 649

Java--二叉树代码实现

ps:这里只讲解二叉树的主要方法的实现过程,内容比较进阶,不讲解二叉树的基本知识!!!!

weixin_73000974的博客 2249

2024年五大革新图像分割模型解析:架构创新与实战应用指南

本文深入解析2024年五大革新图像分割模型,包括SAM2、Mask2Former、DINOv2和Swin Transformer等,探讨其架构创新与实战应用。从多尺度处理、提示交互到自监督学习,这些模型在精度提升、效率优化和交互增强方面取得突破,广泛应用于医疗影像、工业质检和智慧城市等领域。

hadoop5ranger的博客 894

ABAP 平台 SOAUTH2_CLIENT 全面实战:用一套配置,打通 OAuth 2.0 客户端的创建、联调与运维

本文是一份ABAP平台上配置OAuth 2.0客户端的全流程指南,重点介绍新界面SOAUTH2_CLIENT的使用方法。内容涵盖从概念解析到实操步骤,包括四种常见授权方式的选择、证书信任管理、Scope配置以及联调技巧。指南通过两个企业级案例(对接SAP BTP Cloud Integration和SAML 2.0身份联合)展示实际应用场景,并提供了配置清单和伪代码示例。特别强调新界面将客户端配置、令牌测试和校验功能整合的工程化优势,以及与旧事务码OA2C_CONFIG的主要差异。文中多处引用SAP官方文档

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 319

【数据结构 Java 版】二叉树的实现(超多图、超详解)

文章目录1. 树型结构1.1 概念1.2 要掌握的知识点1.3 树的存储形式1.4 树的应用2. 二叉树2.1 概念2.2 二叉树的基本形态2.3 两种特殊的二叉树2.3.1 满二叉树2.3.2 完全二叉树2.4 二叉树的性质2.5 二叉树的存储2.6 二叉树的基本操作2.6.1 二叉树的前、中、后序遍历(递归实现)2.6.2 二叉树的层序遍历2.6.2 二叉树的实现2.7 前中后序的非递归实现3. 二叉树练习题3.1 二叉树基础练习题3.1.1 二叉树的前序遍历3.1.2 二叉树的中序遍历3.1.3 二叉

吞吞吐吐大魔王的博客 1万+

『MaxKB 2.x 开发环境搭建』在Windows下运行最新源码的完整步骤

本文将详细介绍如何在Windows系统中完成MaxKB最新版(2.x)开发环境的搭建,包括前端、后端以及数据库的配置,确保开发者能够顺利启动项目。

老陈聊架构 584

java实现二叉树的创建及三种遍历方式

java实现二叉树的创建及三种遍历方式 接口定义 public interface Tree { /** * 二叉树的创建 * @param arr * @return */ public List<Node> createBinTree(int[] arr); /** * 前序遍历 * @para...

hanliuxi4265的博客 1567

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

java二叉树创建遍历_利用java如何实现创建并遍历二叉树

利用java如何实现创建并遍历二叉树发布时间:2020-11-16 16:27:16来源:亿速云阅读:113作者:Leah利用java如何实现创建并遍历二叉树?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。用java实现的数组创建二叉树以及递归先序遍历,递归中序遍历,递归后序遍历,非递归前序遍历,非递归中序遍历,非递归后序遍历,深度...

weixin_29526767的博客 220

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

java递归创建二叉树_java创建二叉树并递归遍历二叉树

二叉树类代码:package binarytree;import linkqueue.LinkQueue;public class BinaryTree {class Node{public Object data;public Node lchild;public Node rchild;public Node(Object data){this.data = data;this.lchild ...

weixin_39792472的博客 330

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

java二叉树创建以及遍历

学校发的数据结构书还不错,伪代码但是靠谱。最近要用java实现二叉树创建和遍历。不太喜欢那些网上代码。所以就自己结合书结合网上再结合一个人类的一点修改成功啦,细节很重要啊,差一点就是差很多。 实验要求: 1. 递归创建一棵二叉树; 2. 自定义一个Stack,实现二叉树的前序非递归遍历; 3. 实现二叉树的前序、中序递归遍历 我只实现了创建和递归遍历。(1) packa

温和的跳跃 621

Java层次创建与遍历二叉树

数据结构:Java的层次创建与遍历,适合萌新~ 禁止转载 侵权必究 不废话了直接上代码! 代码如下: package tree; /** * 第二题 层次创建和遍历 */ import java.util.LinkedList; import java.util.Queue; import java.util.logging.Level; class BinNode{ Integer val; BinNode leftNode;//左孩子 BinNode rightNode;

weixin_45773983的博客 370

java 创建一个二叉树并遍历

import java.util.Scanner; //定义一个二叉树 //实例化后,形成二叉树的节点 class Tree{   //定义节点的属性     private char data;//存储数据     //存储左右子树地址的属性     private Tree left,right;     //控制数组索引     private int top;//默认为0     /** ...

EmmyDuo的博客 3377

java实现二叉树的创建及遍历

java实现二叉树的创建及遍历 巩固一下二叉树基础知识package Tree;import java.util.ArrayList; import java.util.LinkedList; import java.util.List; import java.util.Queue; import java.util.Stack;/** * * @author don * */ publ

tuobadon的专栏 522

Java 层序创建和遍历二叉树

直接上代码 package te.com; import java.util.LinkedList; import java.util.Queue; import java.util.logging.Level; class BinNode{ Integer val; BinNode leftNode; BinNode rightNode; public Bin...

weixin_30608503的博客 942

java创建二叉树_java实现二叉树的创建及5种遍历方法(总结)

用java实现的数组创建二叉树以及递归先序遍历,递归中序遍历,递归后序遍历,非递归前序遍历,非递归中序遍历,非递归后序遍历,深度优先遍历,广度优先遍历8种遍历方式:package myTest;import java.util.ArrayList;import java.util.LinkedList;import java.util.List;import java.util.Stack;pub...

weixin_35473667的博客 1450

java创建二叉树及遍历

已知外部提供创建树所需要的数据。方法1:按照从上到下从左到右依次把数据放在对应结点来创建树。 即数组中index处的数据在树中仍然是放在index处,而它的左右子结点分别是 2*index+1 , 2*index+2-- BinaryTree.java public class BinaryTree { Node root; int size; // 结点总个数 O

阿城的博客 728

java创建二叉树_Java创建二叉树并遍历的代码详解

Java创建二叉树并遍历的代码public class BinaryTree {private Node root;/**** 内部节点类* @author yhh*/private class Node{private Node left;private Node right;private int data;public Node(int data){this.left = null;this...

weixin_30792221的博客 235

java创建二叉树_Java实现二叉树的创建和遍历操作(有更新)

博主强烈建议跳过分割线前面的部分,直接看下文更新的那些即可。最近在学习二叉树的相关知识,一开始真的是毫无头绪。本来学的是C++二叉树,但苦于编译器老是出故障,于是就转用Java来实现二叉树的操作。但是二者原理是一致的,而且实现的方式也是大同小异!下面就让我们来看看代码吧。1、首先我们需要创建一个二叉树的节点类,便于我们对树的操作,当然了,你也可以在二叉树类的内部将节点类声明为内部类,但是这样会降低...

weixin_32330765的博客 628

java 递归二叉树遍历二叉树_java创建二叉树并递归遍历二叉树

二叉树类代码:package binarytree;import linkqueue.LinkQueue;public class BinaryTree {class Node{public Object data;public Node lchild;public Node rchild;public Node(Object data){this.data = data;this.lchild ...

weixin_36068199的博客 127
上一篇: “+”运算符进行字符串连接与调用StringBuffer/StringBuilder 对象的append方法连接字符的比较
下一篇: JDK下载需要账号,Oracle账号(转)
少年不再NianShao
博客等级 码龄8年 8粉丝 25原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值