终于有人把如何入门C++讲明白了!

为什么C++被公认为是最难的语言? 当你凝视深渊时,深渊也在凝视你!战术上藐视,战略上重视 阅读详情

2020年的最后1个月,C++20的标准正式公布了,它的变化有多大?

先来看一张图:

分别用C++11和C++20编写代码,来实现同一个数据操作的功能

显而易见,C++的代码变得更简洁了,甚至有人说,C++越来越像Python了。新标准来了,尽管现在编译器的配置还不完善,想要尝鲜的人却不少。

不过,对于大部分人,我不建议一上来就直接学C++20,尤其是0基础,一定要先从传统C++开始,再逐步过渡到现代C++。因为C++最核心的东西不是某一项语法特性,而是它作为一种多泛型语言的编程思维。

要掌握这种思维,必须对操作系统、网络知识、数据结构与算法有一定的深入理解。有过面试经验的人应该知道,除了代码能力,这些东西也是必考察项。

除此之外,编程思维对于学任何一门语言的人来说都很重要,它决定了你未来5-10年是继续向上发展,还是随波逐流原地踏步。

最近我发现了1个把C++编程思维讲得很通透的体验课,尤其对初学和转行的朋友很有帮助,而且这个课含金量很高:

为了给粉丝朋友送一波福利,我给大家力争来100个免费名额:

原价 599

现在扫码即可 免费 报名

长按3秒 即可扫码

报名即送视频资料包

下拉查看免费资料包

资料包内容

《二分查找算法和牛顿迭代》

初学者面对二分查找算法和牛顿迭代法时,往往会觉得程序实现过于复杂、学不懂。这个视频资料包能带你更加深入地理解二分查找算法和牛顿迭代算法,并实现简单的运用。

《二分查找算法和牛顿迭代》精讲视频

视频资料由C语言与算法数据结构学科创始人、哈尔滨理工大学计算机特邀讲师于方泽讲解录制,现在,只要报名这个体验课,这份干货满满的学习视频就免费赠送给你啦。

为什么说这个课含金量高?

该课程是由开课吧联合ACM金牌得主、前百度高级算法研发工程师——胡光打造。开课吧的教研团队基本都是来自一线的技术大牛,其创新的教育模式和深入产业前沿的教学理念曾受到政、教、商各界大佬的肯定。

胡光是谁?

前百度高级算法研发工程师,拿过ACM亚洲区金牌,进过2次全球总决赛,与来自麻省理工、哈佛等世界名校的顶尖团队同台竞赛。

作为百度NLP推理引擎的开发者之一,胡光曾获得过百度“黑马奖”、“年度英雄奖”等荣誉,后在美国硅谷主攻人工智能相关领域。17年回国创业,由他创立的海贼班,曾帮助过一批又一批学员成功斩获字节、腾讯、华为等大厂高薪offer。

据悉,这次的体验课自上线以来打磨了10多期,期间开课吧教研团队对计软专业在校生和初阶程序员群体展开了深度的跟踪调查,在得到大量数据反馈后,对教学方式和授课内容进行多次调整优化、精益求精,才有了最终这一版。

课程3天大纲严格按照夯实基础-项目实战-思维提升的思路来设计,3天3次线上直播的授课形式,一是为了方便大家灵活安排学习时间,另一方面是为了便于学习任务的分解。

报名后可以享受7天社群和1v1助教答疑服务。三人行,必有我师焉,跟志同道合的小伙伴一起学习交流,能看到自己还有哪些地方不足,打破自身视野的局限性。

除此之外,每天到课、完成当天的课程学习任务都有免费的学习资料等你领取。

注意啦!

免费名额只有100位!

报满即恢复原价

现在报名就送免费视频资料包

长按扫码报名

终于有人把如何精通C++讲明白了! C++要想往上发展,数据结构和算法是起码的要求,因为程序的本质就等于数据结构+算法。要想提高,刷题是一种方法。但很多人在LeetCode、牛客网刷题的过程中,总觉得代码写不动、刷题没有好的... 阅读详情

相关推荐

【请问】函数重载·真的讲明白了吗?

大家好,我是安然无虞。 上文说到,函数重载是这样定义的: 要求:同一作用域中,函数名相同,函数参数不同,指的是参数个数/类型/顺序不同(形参类型顺序),注意哦,不关返回值类型的事。 C语言不支持同名函数,但是C++支持 比如: int Add(int left, int right) { return left + right; } double Add(double left, double ......

安然无虞的博客 1587

不好好学 C++ 还想做好算法?

C++20版的标准公布后,很多人在说:“C++20都出来了,而我连C++98都还没吃透。”其实不管版本如何更新,C++语言的内核是不会变的。而你学起来吃力效率还低的原因很可能是:只...

程序员吴师兄的博客 1085

【全网最新】使用 1panel面板 部署若依系统( springboot 和 vue)项目

打开前端项目的vue.config.js文件,检查devServer下的proxy代理部分,然后将下面这个端口修改为你要在打包后访问的端口,即使用nginx代理前的接口。这个端口默认是80端口,这里把其修改为不会冲突的8010端口,后台接口的地址配置为9080,不过感觉这里设置的8010和9080可能没有用,因为部署前端静态页面是,也配置了一次网页的外部接口和api的接口,后期有空了再验证。打开右侧的Maven,点击:生存期->package,然后点击运行,等待打包成功,包在如图所示的文件夹中。

老薛的专栏 1758

为什么很多人觉得C++是最难的编程语言?

综上所述,C++之所以被认为是“最难”的编程语言,很大程度上是因为它综合了底层操作、面向对象、泛型编程等多种特性,以及对开发者专业知识、经验和严谨思维的高要求。此外,随着C++标准的持续更新(如C++11、C++14、C++17、C++20等版本的推出),新特性的引入要求开发者不断跟进学习,适应语言的发展。相较于自动垃圾回收机制的语言(如Java和Python),C++的内存管理更具挑战性,特别是对于初次接触系统级编程的开发者而言,这是极大的门槛。C++的优势在于能够在保持高效执行的同时提供高级抽象能力。

m0_60104735的博客 1202

保姆级教程:在Windows 11上用VSCode和Conda搞定Depth-Anything-3(含常见报错修复)

本文提供在Windows 11系统上使用VSCode和Conda配置Depth-Anything-3的完整教程,涵盖环境搭建、依赖安装、常见报错修复及深度图生成实战。特别针对CUDA与PyTorch版本匹配、Hugging Face镜像加速等关键问题提供解决方案,帮助开发者高效实现计算机视觉中的深度估计应用。

weixin_30338481的博客 347

Scratch离线版部署指南:解决资源缺失与页面显示异常问题

本文提供了一份详尽的Scratch离线版部署指南,旨在解决网络依赖导致的资源缺失与页面显示异常问题。通过从基础文件获取、自动化资源抓取到生产环境部署的完整流程,帮助教育工作者和开发者在无网络环境下搭建功能完整的本地Scratch编辑器,确保编程教学的顺利进行。

wine的专栏 1265

当年要是这样搞,我的C++也不至于这样!

当下AI算法大多基于深度学习算法模型,通常在模型训练和验证阶段会采用Python语言快速处理。而在实际应用阶段,则会采用C++来调用模型和性能优化,从而提高算法运行效率。所以未来想要...

我爱计算机视觉 740

Unity 机械臂控制(二)——从碰撞检测到姿态解算:实现精准抓取

本文详细介绍了Unity中机械臂控制的实现方法,从碰撞检测到姿态解算,涵盖精准抓取的全流程。重点讲解了碰撞检测的分层处理、状态机设计、逆向运动学(IK)算法以及抓取稳定性优化等关键技术,并提供了实用的调试技巧和性能优化建议,帮助开发者实现高效的机械臂控制。

weixin_28693447的博客 307

为什么C++编程让人觉得那么难学?

虽然C++的应用领域很广泛,并且C++开发工程师可以获得良好的待遇和发展前景,但是每个人都很清楚C++编程语言很难学。那么为什么C++编程让人觉得那么难学呢? 为什么C++编程让人觉得那么难学? 1、C++设计理念本身想通过各种规则克服C语言里面由于语法规则不清晰导致在运行过程中出现的一些错误。 2、C++语言的更新速度也是相当惊人,其语言本身还在进化。 3、C++也是可以操作指针,本身指针已经很具有复杂性,再加上泛型编程,整个更加热闹了,既追求性能的极致化,还想编程模式灵活性,背的担子异常沉重,以至于很多

kaikeba的博客 1736

吃透 10GBASE-T1 PHY:从 PMA 原理到线束 PCB 工程落地全指南(上)

本文介绍了以太网物理层关键子层PMA(物理介质附属子层)的功能及其测试规范。PMA位于PCS与PMD之间,负责数字信号与模拟信号的转换,包括串并转换、时钟恢复等核心功能,并支持链路监测与调试。文章详细阐述了7种测试模式的定义与应用场景,涵盖发射机抖动、线性度、功率谱密度等参数的检测方法。测试模式包括特定信号序列的发送与验证,如JP03A/B、PRBS13Q等。此外还介绍了测试夹具的使用要求,为PMA的性能验证提供了完整的技术框架。

一只豌豆象的博客 157

YOLOv11涨点改进 | 全网创新首发、主干改进篇 | CVPR 2025 | RAVLT主干让 YOLOv11 更加强大!通过增强线性注意力机制,特别在小目标和复杂背景的检测上表现突出

本文提出RAVLT主干网络,通过改进YOLOv11的空间特征建模能力,显著提升小物体和复杂背景检测性能。RAVLT采用秩增强线性注意力(RALA)机制,在保持线性计算复杂度的同时解决传统线性注意力低秩问题。RALA通过增强KV缓冲区和输出特征矩阵的秩,提高特征多样性和建模能力。实验表明,RAVLT在ImageNet-1k上达到84.4% Top-1准确率,仅需2600万参数和4.6GFLOPs,性能优于现有线性注意力模型。文章详细介绍了RAVLT模块结构、实现原理及在YOLOv11中的集成方法,包含四种主干

Ai缝合怪、助力小伙伴高效发论文 641

终于有人把鸿蒙OS讲明白了,大佬讲解!快收藏!

来自 | GitHub科技 本文面向的是开发人员,主要想通过科普让大家了解一下鸿蒙开发。接下来,我想给大家科普一下这个这么火的鸿蒙系统。 到底什么是鸿蒙 OS 在官网上看到鸿蒙 OS 的简介是,分布式能力造就新硬件、新交互、新服务,打开焕然一新的全场景世界。以及发布会提及最多是他的万物互连,全场景,分布式,微内核,软总线。 换句话说,鸿蒙OS 是为全场景,分布式设计的,微内核,软总线是他重要的实现。 C/C++的学习裙【七一二二八四七零五】,无论你是小白还是进阶者,是想...

miaozenn的博客 1万+

杰理-tone

低音质格式切换高音质格式:切换提示音格式,未导出,编译下载没有提示音;提示音导出,再次编译下载,提示音正常高音质格式切换低音质格式:不需要导出,直接编译下载,提示音正常。

m0_67447112的博客 955

讲真!这次终于有人把如何精通C++讲明白了!

大多数人自学C++,基本都是看书啃语法——不懂的地方就去B站找讲解视频——看懂了就过。这种学习路径没毛病,但是很容易出现1个问题:眼睛、脑袋表示会了,一上手实操代码,立马一头雾水。这主要是...

全栈开发者社区 185

YOLOv8 置信度阈值 (conf) 和 IoU 阈值 (iou) 详解:如何平衡漏检与误检?

摘要 本文深入探讨了YOLOv8目标检测模型中两个关键参数——置信度阈值(conf)和IoU阈值(iou)的核心作用。文章从目标检测的基础概念出发,解释了置信度分数反映模型预测可靠性,IoU衡量预测框重叠程度。重点剖析了非极大值抑制(NMS)机制如何通过这两个阈值进行预测框筛选:置信度阈值作为初筛门槛,IoU阈值决定重叠框的取舍。通过生动比喻和可视化图表,阐述了合理调节这两个参数能有效平衡误检与漏检问题,是优化YOLOv8模型实际表现的重要技巧。全文以实践为导向,帮助开发者掌握成为"调参大师&qu

深耕 Vue 生态与 JS/TS 技术,聚焦组件封装、响应式原理、TS 类型设计,解析工程化配置与性能优化方案。同时分享 YOLOv8 目标检测实战、AI 大模型面试核心考点,以代码实例拆解技术实现与业务解法。 1258

数学建模模型总结

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

C++中的 .h 和 .cpp 详解

通俗解释:.h和.cpp差不多就像书和目录的关系吧,目录中对书中的章节和内容进行简单表示,真正的实现是在书里面的。 一般的数据,数据结构,接口,还有类的定义放在.h文件中,可以叫他们头文件,可以#include 到别的文件中。功能实现一般都放在具体的.cpp文件中,这样方便文件管理,节约时间,提高效率。 你完全可以把功能实现一并放在.h文件中,也可以#include一个.cpp文件到另一个源文件中...

a063225的博客 2万+

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

数据中台怎么选型?终于有人讲明白了

数据中台怎么选型?终于有人讲明白了

LuciferLiu_DBA 7万+

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

终于有人把 CountDownLatch,CyclicBarrier,Semaphore 讲明白了!

在 JUC 下包含了一些常用的同步工具类,今天就来详细介绍一下,CountDownLatch,CyclicBarrier,Semaphore 的使用方法以及它们之间的区别。 一、CountDownLatch 先看一下,CountDownLatch 源码的官方介绍。 意思是,它是一个同步辅助器,允许一个或多个线程一直等待,直到一组在其他线程执行的操作全部完成。 public CountDownLa...

烟雨星空的博客 757

彻底讲明白C++中指针和引用的区别到底是啥!

学过C的都知道指针,刚开始学习指针的时候,都会觉得指针很难,学完了指针才发现指针就是保存的地址。指针十分不安全,使用的不恰当,就会使程序出错!C++里面提出了“引用”代替指针,提高程序的安全性。下面来讲讲什么是引用。 一、引用的定义 引用是给另外一个变量起别名,绑定一个变量,所以引用不会分配内存空间。对引用的所有操作,事实上都是作用在该引用所绑定的对象上。 引用的声明方法:类型标识符 &am...

jinking01的专栏 2735

一文讲明白C++中的结构体Struct和类Class的区别以及使用场景

虽然结构体和类在某些方面很相似,但它们的默认行为、访问权限、使用场景以及是否支持面向对象编程的特性(如继承、多态等)都有明显的差异。在选择使用结构体还是类时,需要考虑你的代码的需求和设计目标。

qq_39350172的博客 2万+

C++ 指针运算符(& 和 *) 终于讲明白了

C++ 指针运算符(& 和 *) | 菜鸟教程 C++指针运算符(& 和 *) 正在上传…重新上传取消C++ 运算符 C++ 提供了两种指针运算符,一种是取地址运算符 &,一种是间接寻址运算符 *。 指针是一个包含了另一个变量地址的变量,您可以把一个包含了另一个变量地址的变量说成是"指向"另一个变量。变量可以是任意的数据类型,包括对象、结构或者指针。 取地址运算符 & & 是一元运算符,返回操作数的内存地址。例如,如果 var 是一个整型变量,则 &a..

studyvcmfc的专栏 1408

终于有人把辛普森悖论讲明白了

导读:困扰统计学家60多年的魔咒,时至今日也没有得到彻底解决。作者:徐晟来源:大数据DT(ID:hzdashuju)在做重大决策时,我们总会参考一些统计数据,比如高考前关注学校的录取率,择业时参考各个行业的就业率等。统计数字可以帮助我们比较这些对象的优劣,做出更加合理的决定。但有时,统计数字并不靠谱,基于统计数据的因果推断甚至会出错。举例来说,假设张三想去医院看病。他收集...

华章IT官方博客 650
上一篇: 腾讯牛逼!终于开源了自家的 Tencent JDK——Kona!!
下一篇: CTO 写的代码,真是绝了!
公众号:【GitHub爱好者社区】
博客等级 码龄6年 357粉丝 48原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值