编程刷题平台Codewars初体验-Java

article/2025/8/18 20:50:47

点此欢迎光临我的个人网站【一几文星球】

最近发现了一个很多网友都在推荐的编程刷题平台Codewars,作为一个对啥都好奇(啥都学不深 )的编程菜鸟,我二话不说直接开始注册体验。

网站一进,嘿,全英文,看不懂,怎么办?不急,祭出各在线翻译工具,大致意思明白了就行。

刚注册完,界面就提示选编程语言,基于广泛涉猎(但都是蜻蜓点水)的习惯,Java、JavaScript、Go、Python、PHP、R、Shell、PowerShell、SQL、R等唰唰的一通全勾选上,不会没关系,这不是就来学了嘛。

然后还有个编程水平的选项,我选了入门,其他还有初级、中级、高级的选项。

在进入刷题界面前还有段代码让检查bug,比较简单,就是有一行代码没有结束的分号,加上一提交就过了。

接下来就是真正的题目来了:(网上说有两种给题方式,一种是平台随机给题,一种是自己找题,这里是平台随机给题)

题目:

Complete the method/function so that it converts dash/underscore delimited words into camel casing. The first word within the output should be capitalized only if the original word was capitalized (known as Upper Camel Case, also often referred to as Pascal case).

完成方法/函数,以便将破折号/下划线分隔的单词转换为驼峰式大小写。 仅当原始单词大写时,输出中的第一个单词才应大写(称为 Upper Camel Case,通常也称为 Pascal case)。[谷歌翻译]

Examples

"the-stealth-warrior" gets converted to "theStealthWarrior"
"The_Stealth_Warrior" gets converted to "TheStealthWarrior"

而且调用的测试代码是已经给好了,要编写的就是类Solution里的toCamelCase方法。

由于平时写代码非常依赖编辑器的自动补全等功能,而Codewars是没有的,有点不习惯,所以是先在idea里面写了测试后再拿到Codewars提交的。

因为类Solution上面有个StringBuilder的引入,我以为是题目要求要用这个的,所以选择了用StringBuilder拼接字符串,但是后面提交后发现其他提交的很多都没有用到,想来应该不是题目条件而是一个提示罢了吧。

My Solutions(我的解决方案):

提交通过后,可以看到很多网友大神的解决方案,然后我仔细研读了一些高赞的解决方案,越看越觉得自己真的菜,还有就是很多大神都用了正则表达式,代码是相当简洁,不像我罗里吧嗦,还很多方面没有考虑到。

该题的几个最佳实践:

高赞的第一个方案炸出来菜鸟我很多不知道的点啊,太多要学要看的了。
(正则表达式由于使用得不多,此前也都没怎么了解过regex这个工具包。)

高赞的第二个方案,使用了正则表达式和Lambda表达式,代码非常的简洁。 对比了下自己的代码,有点被打击到了。
(但是后面当我点开该题下的讨论,翻看了一下,怎么说呢,信心有找回一点点。)

最后,总结一下,Codewars是个很好的编程刷题平台,希望经常三分钟热度的自己能坚持刷下去。

 

点此欢迎光临我的个人网站【一几文星球】

下一篇:Codewars编程刷题学习2(Java)Create Phone Number-有时候越简单的题越容易被人想得很难

微信公众号,欢迎关注,一起学习。

 


http://chatgpt.dhexx.cn/article/NGHu6reC.shtml

相关文章

Codewars | 使用入门

https://jingyan.baidu.com/article/adc81513864eebf723bf73ab.html https://www.codewars.com/trainer/setup 注册以后,大家的编程段位是8段。段位越高,段数越小。 目前笔者的段位是6段。通过解决难度在6段和6段以上的问题可以获得段位的提升。当然&…

梯度提升树(GBDT)

提升树模型 提升树是以分类数或回归树为基本分类器的提升方法。提升方法实际采用加法模型&#xff08;即基函数的线性组合&#xff09;与前向分布算法&#xff0c;以决策树为基函数的提升方法为提升树&#xff08;boosting tree&#xff09;。基本分类器 x < v x<v x<…

机器学习: 提升

文章目录 Github提升的概念理解与随机森林的比较提升算法 GBDT参数设置和正则化 XGBoostAdaboost算法总结 Github 系列文章 pdf 版本已经上传至&#xff1a; https://github.com/anlongstory/awsome-ML-DL-leaning/tree/master/xiaoxiang-notes 欢迎 Star 和下载 ? 提升的概…

多模态深度学习综述:网络结构设计和模态融合方法汇总

点击上方“机器学习与生成对抗网络”&#xff0c;关注"星标" 获取有趣、好玩的前沿干货&#xff01; 作者丨小奚每天都要学习知乎 编辑丨极市平台 来源丨https://zhuanlan.zhihu.com/p/152234745 一、简介 从2010年开始&#xff0c;深度学习方法为语音识别&#xff0…

回归分析(数据拟合---MATLAB和1stopt软件)

回归分析&#xff08;regression analysis)指的是确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法。 回归分析按照涉及的变量的多少&#xff0c;分为一元回归和多元回归分析&#xff1b; 按照因变量的多少&#xff0c;可分为简单回归分析和多重回归分析&#xf…

利用Excel的LINEST计算线性拟合的斜率和截距的不确定性

目录 线性拟合的斜率和截距的不确定性Excel数组函数LINESTLINEST结果的含义LINEST输出的10个统计参数含义如下&#xff1a; 模型预测 y ^ \widehat{y} y ​ m x b mxb mxbReferences 线性拟合的斜率和截距的不确定性 利用熟悉的Excel绘图功能&#xff0c;可以根据距离-高程散…

机器学习算法——Kmeans

1.k-mean算法的原理 1、选取K个点做为初始聚集的簇心 2、分别计算每个样本点到K个簇核心的距离&#xff08;这里的距离一般取欧氏距离或余弦距离)&#xff0c;找到离该点最近的簇核心&#xff0c;将它归属到对应的簇 3、所有点都归属到簇之后&#xff0c;M个点就分为了K个簇…

【时序】Reformer:局部敏感哈希(LSH)实现高效 Transformer 论文笔记

论文名称&#xff1a;Reformer: The Efficient Transformer 论文下载&#xff1a;https://arxiv.org/abs/2001.04451 论文年份&#xff1a;ICLR2020 论文被引&#xff1a;706&#xff08;2020/04/20&#xff09; 论文代码&#xff1a;https://github.com/google/trax/tree/mast…

损失函数MSE和MAE的区别以及如何选择

1、均方误差&#xff08;L2损失&#xff09; 均方误差(MSE)是最常用的回归损失函数&#xff0c;计算方法是求预测值与真实值之间距离的平方和&#xff0c;公式如下&#xff1a; M S E 1 m ∑ m i 1 ( y i − y ^ i ) 2 MSE\frac{1}{m} \sum_{m}^{i1}\left(y_{i}-\hat{y}_{i}…

连载|GBDT如何进行回归和分类

GBDT 在前几年的机器学习竞赛以及工作中&#xff0c;人们使用着各种传统算法进行调参取得性能的提升&#xff0c;突然有一天杀出了一种名为GBDT的算法&#xff0c;改变了当前的格局&#xff0c;该算法在不同的场景中总是能够产生很好的效果&#xff0c;本文就让我们来了解一下…

最小二乘法多项式曲线拟合数学原理及其C++实现

目录 0 前言1 最小二乘法概述2 最小二乘法求解多项式曲线系数向量的数学推导2.1 代数法2.2 矩阵法 3 代码实现4 总结参考 0 前言 自动驾驶开发中经常涉及到多项式曲线拟合&#xff0c;本文详细描述了使用最小二乘法进行多项式曲线拟合的数学原理&#xff0c;通过样本集构造范德…

GB和GBDT 算法流程及分析

1、优化模型的两种策略&#xff1a; 1&#xff09;基于残差的方法 残差其实就是真实值和预测值之间的差值&#xff0c;在学习的过程中&#xff0c;首先学习一颗回归树&#xff0c;然后将“真实值-预测值”得到残差&#xff0c;再把残差作为一个学习目标&#xff0c;学习下一棵回…

机器学习和深度学习性能指标

这里写目录标题 1、声明2、机器学习评估性能指标2.1、回归&#xff08;Regression&#xff09;算法指标2.1.1、平均绝对误差 MAE2.1.2、均方误差 MSE2.1.3、均方根误差 RMSE2.1.4、决定系数R^22.1.5、解决评估指标鲁棒性问题 2.2、分类&#xff08;Classification&#xff09;算…

多模态信息融合研究

1、主要研究方向 多模态学习可以划分为以下五个研究方向&#xff1a; 多模态表示学习 Multimodal Representation&#xff1a;主要研究如何将多模态的数据所蕴含的语义信息通过embedding的方式实现向量化&#xff0c;便于后续的计算&#xff1b; 模态转化 Translation&#…

【时序】DeepGLO:可以学习全局依赖和局部信息的多时间序列预测模型

论文名称&#xff1a;Think Globally, Act Locally: A Deep Neural Network Approach to High-Dimensional Time Series Forecasting 论文下载&#xff1a;https://arxiv.org/abs/1905.03806 论文年份&#xff1a;NeurIPS 2019 论文被引&#xff1a;134&#xff08;2022/04/21&…

独立性检验(卡方检验)

独立性检验(Test for Independence)是根据频数来判断两类因子是彼此独立还是彼此相关的一种假设检验。假如对某一个数据集有X&#xff08;值域为x1, x2&#xff09;跟Y&#xff08;值域为y1, y2&#xff09;变量&#xff0c;下面是他们的频数表&#xff1a; x1 x2 汇总 y1 …

列联表分析——独立性检验(卡方检验)

第一步&#xff1a;建立原假设和备择假设 H0&#xff1a;两变量相不立&#xff1b;H1&#xff1a;u两变量相互b独立 第二步&#xff1a;计算自由度和理论频数 第三步&#xff1a;计算卡方统计量 实际观察次数与理论次数之差的平方再除以理论次数得到的统计量近似服从卡方分布…

列联表分析-独立性检验

用SPSS分析甲乙丙三名推销员的对ABC三类产品的销售数据是否独立 原假设&#xff1a;他们之间相互独立 数据如下&#xff1a; 导入数据 将销量进行加权 点击分析-描述统计–交叉表&#xff1b; 结果 当表格是2X2的时候得到结果如下&#xff1a;

第15章卡方检验:拟合优度和独立性检验

第1章统计学入门 第2章频数分布略 第3章集中趋势的测量 第4章变异性 第5章分数的位置及标准化分布 第6章概率和正态分布 第7章概率和样本&#xff1a;样本均值的分布 第8章假设检验介绍 第9章t检验介绍 第10章两个独立样本的t检验 第11章两个相关样本的t检验…

独立样本t检验、方差齐性检验

什么是独立样本t检验&#xff1f; t检验是比较两组数据之间的差异&#xff0c;有无统计学意义&#xff1b;t检验的前提是&#xff0c;两组数据来自正态分布的群体&#xff0c;数据的方差齐&#xff0c;满足独立性。 独立样本t检验&#xff08;各实验处理组之间毫无相关存在&am…