LeetCode_59螺旋矩阵II

【LeetCode第59题】长舒一口气,终于学会了这苦涩难懂的 螺旋矩阵II 今天早上在LeetCode上刷数组相关的题目,前面写过的几道题刷的挺舒服的,什么快慢指针、滑动窗口、双指针以及二分查找等等,题解看懂后,自己都可以敲一遍代码实现题目的要求。这道题,真的是很烦,虽然没什么数据结构与算法,模拟的是过程,但是却十分的考察对代码的掌握能力,看了好久,把自己的解题思路写在博客上,希望大家喜欢✔。这道题不像是其它的算法题,它主要考的是模拟过程,没有涉及到什么算法,需要多些,多想。//注意,这里的 j的值已经发生了改变,它是第一个for循环后的结果。//把每一次遍历的开始,确定好位置。 阅读详情

题目:
59螺旋矩阵II
思路:
按数字递增方向逐圈进行赋值

每圈分为四个方向:
从左到右;从上到下;从右到左;从下到上

“每圈” 首个元素位置递增。
可设一个start作为标记。通过每次start++改变位置。
在这里插入图片描述
设count,每次++进行赋值,while(count<=n*n)来判断是否结束循环。
对每圈:
左→右
j=start; j<n-start; j++
其中 j<n-start 理解:
在这里插入图片描述
源码:

public class lc_59 {
    public static int[][] generateMatrix(int n) {
        int[][] arr = new int[n][n];
        int start=0;
        int count = 1;
        int i=0,j=0;
        while (count<=n*n){
            for (j = start;j<n-start;j++)
                arr[i][j] = count++;
            j--;	//因为在for循环中最后j++了一次,故减一次。其他同理
            for (i = start+1;i<n-start;i++)
                arr[i][j] = count++;
            i--;
            for (j--;j>=start;j--)
                arr[i][j] = count++;
            j++;
            for (i--;i>start;i--)
                arr[i][j] = count++;
            i++;
            start++;
        }
        return arr;
    }

    public static void main(String[] args) {
        int[][] a = generateMatrix(3);
        for (int i=0;i<6;i++){
            for (int j = 0;j<6;j++)
                System.out.print(a[i][j]+"\t");
            System.out.println();
        }

    }
}
【中等】力扣算法题解析LeetCode59:螺旋矩阵 II 要求生成一个n×n的螺旋矩阵,元素按顺时针顺序从1填充到n²。通过模拟填充过程实现:初始化四个边界(top、bottom、left、right),依次按顺时针方向填充外圈(左→右、上→下、右→左、下→上),每完成一圈后收缩边界,直到填满所有数字。时间复杂度O(n²),空间复杂度O(n²)。示例:n=3时输出[[1,2,3],[8,9,4],[7,6,5]]。 阅读详情

相关推荐

Canoe主要功能的详细介绍

CANoe是德国Vetor公司推出的一款用于总线开发的设备,全程为CAN open environment。后来随着总线技术的发展,CANoe不仅限于CAN类型的总线开发,还包含LIN、FlexRay、MOST和以太网等开发。在车载网络和ECU开发、测试和分析方面,CANoe几乎长期占据着垄断地位,当然是因为其强大的功能性了。目前用这个工具的主要是整车厂和供应商的网络设计工程是、开发工程师和测试工程师。小编当时安装CANoe的时候也是花了一定的时间和精力,好在没有崩溃。

车载测试 3722

leetcode59:螺旋矩阵||(思路+详解)

一:题目 二:思路 1.我们需要模拟数字的变化过程, 2.模拟填充的过程:(顺时针) 填充上行 从左到右 填充右行 从上到下 填充下行 从右向左 填充左行 从下到上 3.分析我们填充数字的过程,比如n=3的时候 上行:1,2 右行:3,4 下行:5,6 左行:7,8 这么分析下来我们每次填充的规律也就是 左开右闭 三:上码 class Solution { public: /*** 思路:1.我们需要模拟数字的变化过程, 2.模拟填充的过程:(顺时针)

qq_48508278的博客 1058

27、视网膜血管识别与分类的数据集和验证过程

本文介绍了视网膜血管自动识别与分类方法所使用的数据集及其验证过程。通过30张高分辨率的近红外反射视网膜图像,结合专业医生的手动标注结果,构建了包含597个血管段的基准数据集。研究采用准确率、召回率、F1分数和混淆矩阵等评估指标对模型进行验证,并提出了特征增强和分类器优化策略以提升性能。实验结果显示,该方法在复杂区域具有较强的鲁棒性和较高的准确性,为临床应用提供了可靠的依据。

i7j8k9l的博客 148

59. Spiral Matrix II

59. 螺旋矩阵 II 题目描述 给定一个正整数 n,生成一个包含 1 到 n^2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵。 思路 画出了1~5的情况,找规律。 改进 -最快代码 class Solution { public: vector<vector<int>> generateMatrix(int n) { vector<vector<int>> res(n, vector<int>(n, 0)); //

weixin_39500853的博客 365

[VCS]VCS checkpoint简介以及其在SoC验证加速中的作用

VCS checkpoint是Synopsys VCS提供的快照/恢复机制,可显著加速SoC验证。其核心是在仿真关键节点(如完成初始化后)保存系统状态,后续测试可直接从该点恢复,避免重复执行冗长的初始化阶段(如boot、DDR训练等)。该技术特别适用于多测试用例共享同一初始状态的场景,通过分离初始化与功能验证流程,可提升回归效率3-5倍。需注意处理DPI-C状态同步、版本管理及存储优化等问题,结合UVM和自动化脚本可实现更高效的验证流程。典型应用可节省数百万cycle的重复仿真时间。

元直的博客 774

Windows 镜像包大全(附百度云下载链接)

插入U盘,找到下载好的两个驱动软件,并安装,先打开驱动人生万能网卡版,安装好网卡驱动,可以接入wifi或者网线了,然后打开驱动精灵,按照提示,安装所有的驱动(中间要是让你重启,就先选择稍后再说,如果有的驱动安装好之后非要你重启,关不掉的那种,那你就重启吧),等全部安装好了,重启电脑。如果你有显卡,这里以英伟达举例,我是GTX960的,当你的驱动都安装好后,右键桌面,会出现一个英伟达控制面板。安装软碟通,下载之后,一直下一步就ok,啥也不用配置,到了最后一项点击“继续试用”即可。(下载里面的网卡版即可),

悦分享 7346

LeetCode59-螺旋矩阵

本文为LeetCode59-螺旋矩阵,欢迎学习!

Toby的博客 548

RT-DETR-R18 的轻量化 Trick:剪枝与量化在模型中的应用

RT-DETR-R18轻量化技术通过结构化剪枝、混合精度量化和知识蒸馏的组合优化,实现了显著模型压缩效果。摘要如下: RT-DETR-R18模型通过创新轻量化技术组合,在保持46.2% mAP精度的前提下,将模型大小压缩至2.1MB(压缩率78%),计算量降至3.2 GFLOPs(减少78.2%),实现移动端28ms实时推理(加速37.8%)。核心技术包括:1)渐进式结构化剪枝系统,通过L1范数重要性评估和动态剪枝调度;2)混合精度量化策略,对关键层保留FP16精度;3)教师-学生知识蒸馏框架保持模型表达能

走向CTO的路上... 1188

Leetcode 题解-59题

Leetcode-59题 题解。

leon2077的博客 870

Coze智能体开发:工作流教程之解析文件概述

大模型本身并不具备文件读取和解析的能力,无法直接处理文件字节流。对于支持工具调用(Function calling)的模型,扣子提供插件功能来帮助大模型调用外部工具 API,拓展大模型的能力边界。扣子插件商店提供海量官方插件和第三方插件,例如链接读取插件可以将链接对应的文件内容解析为纯文本传递给大模型。

王国平的博客 1793

使用 MATLAB/Simulink + Simscape Electrical 来构建一个CCHP微电网与新能源协同运行的模型

随着能源需求的增长和对环境保护要求的提高,冷热电联供(Combined Cooling, Heating and Power, CCHP)系统作为一种高效的分布式能源解决方案,越来越受到关注。CCHP系统通过利用一次能源同时产生电力、制冷和供热,实现了能源的梯级利用,提高了能源使用效率。结合太阳能、风能等可再生能源,可以进一步增强系统的灵活性和环保性。本文将详细介绍如何使用来构建一个CCHP微电网与新能源协同运行的模型,并通过仿真分析其性能表现。本文介绍了如何使用构建一个。

xiaoheshang_123的博客 141

数组-螺旋矩阵II:力扣LeetCode59

给定一个正整数 n,生成一个包含 1 到 n^2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵。示例:输入: 3 输出: [ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ] ]

buhui_c的博客 314

基于Java+SpringBoot+微信小程序实现奶茶点单系统

再不用担心逢年过节的第一杯奶茶有没有人送了,制作一个奶茶点单系统自己当店主,开怀畅饮,一劳永逸。

商务合作 / 项目定制 / 学习交流。个人vx:lovely_wml 1万+

LeetCode59- 螺旋矩阵 II

LeetCode59- 螺旋矩阵 II 给定一个正整数 n,生成一个包含 1 到 n2n^{2}n2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵。 示例: 输入: 3 输出: [ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ] ] 一、思路 (一)分而治之 和之前的一样,将这个矩阵进行分层: LeetCode48-旋转图像 LeetCode54-螺旋矩阵 ...

lyd1995的博客 218

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

LeetCode 59. 螺旋矩阵 II

LeetCode 59. 螺旋矩阵 II 一行一行的模拟或者写好方向然后搜索 #include&amp;lt;vector&amp;gt; #include&amp;lt;iostream&amp;gt; #define rep(i,a,b) for(int i=(a); i&amp;lt;(int)(b);++i) #define _rep(i,a,b) for(int i=(a);i&amp;lt;=(int)(b);++i) using ...

缇欧的咪西 172

数学建模模型总结

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

LeetCode 力扣 59. 螺旋矩阵 II

题目描述(中等难度) 和 54题 差不多,54 题按照螺旋状遍历,这个是按照螺旋状生成二维数组。 解法一 直接按照 54题,贪吃蛇的走法来写,如果没做过可以看一下。 /* * direction 0 代表向右, 1 代表向下, 2 代表向左, 3 代表向上 */ public int[][] generateMatrix(int n) { int[][] ans = ...

wind_liang的博客 640

深度学习工具包 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")

力扣第59题:螺旋矩阵II

就是在说:"我给你的二维数组,第i行有n个有效数据,请不要越界访问!:创建"目录"(记录每行从哪里开始):创建实际的"数据行"(每行的数据存储空间)就像一本书:先创建目录(哪些内容在哪一页)再写每一页的具体内容这样你才能通过num[i][j]正确访问到第i行第j列的数据。角色第一个循环第二个循环建筑工地制作施工图纸实际盖楼图书馆制作图书目录采购和摆放图书快递制作快递单(写物品信息)打包实际的物品电影制作电影海报(宣传信息)拍摄实际的电影第一个循环是"说",第二个循环是"做"

2501_94418674的博客 1074

力扣59. 螺旋矩阵 II

这道题依然要坚持循环不变量原则(二分法也是这样的!

qq_45858191的博客 723

LeetCode第59题_螺旋矩阵II

给你一个正整数 n ,生成一个包含 1 到 n² 所有元素,且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix。

qq_40263592的博客 946

Leetcode59. 螺旋矩阵 II

Leetcode59. 螺旋矩阵 II 题目: 给定一个正整数 n,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵。 相似题目:Leetcode54. 螺旋矩阵 示例: 输入: 3 输出: [ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ] ] 题解: java代码: /** * @param n * @ret...

会流泪de鱼的博客 202

59. 螺旋矩阵 II - 力扣(LeetCode)

题目描述 给定一个正整数 n,生成一个包含 1 到 n2n^2n2所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵。 示例: 输入: 3 输出: [ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ] ] 题解 直接模拟,从(-1, 0)出发,按着螺旋方向依次填值1-n2n^2n2,遇到边界或者访问过的,则改变方向,方向为(右、下、左、上)。 时间复杂度为o(n2)o(n^...

Onwaier的博客 507

leetcode59------螺旋矩阵II

每次在对某一圈上的元素进行填写时,都会涉及到四条不同的边,那么我们肯定是希望在填充这四条边的时候能尽量对称的填写,即每条边填写元素相等,例如:对于3×3矩阵,我们在填写最外圈时希望每条边填写2个元素,因为这样保证了每条边都会填写两个元素,确保对称填写。根据螺旋矩阵的特点,即从外圈到最中间的数据呈现从1到n*n分布,方向为顺时针,我们可以先填充最外圈的元素,然后再填充次外圈的元素,依此类推,直到最后一圈(n为偶数)或最后一个元素(n为奇数)填充完毕。到 n^2 所有元素,且元素按顺时针顺序螺旋排列的。

xinxin的博客 1096

【LeetCode】59. 螺旋矩阵 II

本文介绍了生成螺旋矩阵的算法,重点分析边界收缩法作为最优解法。题目要求生成n×n矩阵并按顺时针螺旋顺序填充1到n²的数字。边界收缩法通过维护四个边界(top,bottom,left,right)逐层填充,时间复杂度O(n²),空间复杂度O(1)。文中比较了四种解法,提供Go语言实现代码,并讨论了边界处理、测试用例设计等实战技巧。适用于矩阵生成、图像处理等场景,核心是掌握边界管理和螺旋填充顺序。

qq_32019341的博客 1523

力扣59 螺旋矩阵II

由外向内一圈一圈这么画下去。

2202_75601845的博客 282
上一篇: IDEAtips
下一篇: JDBC笔记记录及错误记录
folinggg
博客等级 码龄6年 20粉丝 53原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值