2024年Web前端最新[学习报告]《LeetCode零基础指南》(第五讲) 指针,前方高能

本文介绍了学习HTML5、CSS、JavaScript基础知识的重要性,推荐了《JavaScript的高级程序设计》等必备书籍,并强调了阅读实践结合,如性能优化和设计模式的学习。同时,文中还提到了编程题目集锦,包括数组操作、字符串处理和面试技巧等内容。
摘要由CSDN通过智能技术生成

结尾

学习html5、css、javascript这些基础知识,学习的渠道很多,就不多说了,例如,一些其他的优秀博客。但是本人觉得看书也很必要,可以节省很多时间,常见的javascript的书,例如:javascript的高级程序设计,是每位前端工程师必不可少的一本书,边看边用,了解js的一些基本知识,基本上很全面了,如果有时间可以读一些,js性能相关的书籍,以及设计者模式,在实践中都会用的到。

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

高级程序设计,是每位前端工程师必不可少的一本书,边看边用,了解js的一些基本知识,基本上很全面了,如果有时间可以读一些,js性能相关的书籍,以及设计者模式,在实践中都会用的到。

html5

第四题:1480. 一维数组的动态和

第五题:剑指 Offer 58 - II. 左旋转字符串

第六题:1108. IP 地址无效化

第七题:剑指 Offer 05. 替换空格

字符串替换总结:

第八题:1365. 有多少小于当前数字的数字

第九题:剑指 Offer 17. 打印从1到最大的n位数

第十题:1389. 按既定顺序创建目标数组


第一题:1470. 重新排列数组

=======================================================================================

class Solution {

public int[] shuffle(int[] nums, int n) {

//只需两个数的步长为n就在一起,在新的数组,因为一次加了两个元素,

//所以每一次下来都得加2

int arr[]=new int[2*n];

for(int i=0,j=0;i<n;i++,j+=2){

arr[j]=nums[i];

arr[j+1]=nums[i+n];

}

return arr;

}

}

第二题:1929. 数组串联

=========================================================================================

class Solution {

public int[] getConcatenation(int[] nums) {

//在n和2n分别弄两个索引进行拷贝就可以了

int n=nums.length;

int arr[]=new int [2*n];

int j=0;

for(int i=0;i<2*n;i++){

if(i<n){

arr[i]=nums[i];

}else{

arr[i]=nums[j];

j++;

}

}

return arr;

}

}

第三题:1920. 基于排列构建数组

=======================================================================================================

这题按照题目的意思就可以了

class Solution {

public int[] buildArray(int[] nums) {

int n= nums.length;

int []arr=new int[n];

for(int i=0;i<n;i++){

arr[i]=nums[nums[i]];

}

return arr;

}

}

第四题:1480. 一维数组的动态和

==================================================================================================

第一想法就是创建一个方法实现前几项的和。

class Solution {

public int[] runningSum(int[] nums) {

int count=0;

int n=nums.length;

int arr[]=new int[n];

for(int i=0;i<nums.length;i++){

count=soul(nums,i+1);

arr[i]=count;

}

return arr;

}

public static int soul(int nums[],int n){

int sum=0;

for(int i=0;i<n;i++){

sum+=nums[i];

}

return sum;

}

}

第五题:剑指 Offer 58 - II. 左旋转字符串

=============================================================================================================================

这题参考了一下评论区的想法

class Solution {

public String reverseLeftWords(String s, int n) {

StringBuilder sb=new StringBuilder();

for(int i=n;i<s.length();i++){

sb.append(s.charAt(i));//从n开始得到每个字符

}

for(int i=0;i<n;i++){

sb.append(s.charAt(i));//将第一个到n依次加到之前的后面

}

return sb.toString();//转为字符串后返回

}

}

第六题:1108. IP 地址无效化

==================================================================================================

class Solution {

public String defangIPaddr(String address) {

StringBuilder sb=new StringBuilder();

for(int i=0;i<address.length();i++){

if(address.charAt(i) == ‘.’){//当等于’.'时不加进去,而加"[.]"这样就完成了替换

sb.append(“[.]”);

continue;

}

sb.append(address.charAt(i));

}

return sb.toString();

}

}

第七题:剑指 Offer 05. 替换空格

====================================================================================================

class Solution {

public String replaceSpace(String s) {

StringBuilder sb=new StringBuilder();

for(int i=0;i<s.length();i++){

if(s.charAt(i)==’ '){

文末

技术是没有终点的,也是学不完的,最重要的是活着、不秃。

零基础入门的时候看书还是看视频,我觉得成年人,何必做选择题呢,两个都要。喜欢看书就看书,喜欢看视频就看视频。

最重要的是在自学的过程中,一定不要眼高手低,要实战,把学到的技术投入到项目当中,解决问题,之后进一步锤炼自己的技术。

自学最怕的就是缺乏自驱力,一定要自律,杜绝“三天打鱼两天晒网”,到最后白忙活一场。

高度自律的同时,要保持耐心,不抛弃不放弃,切勿自怨自艾,每天给自己一点点鼓励,学习的劲头就会很足,不容易犯困。

技术学到手后,找工作的时候一定要好好准备一份简历,不要无头苍蝇一样去海投简历,容易“竹篮打水一场空”。好好的准备一下简历,毕竟是找工作的敲门砖。

拿到面试邀请后,在面试的过程中一定要大大方方,尽力把自己学到的知识舒适地表达出来,不要因为是自学就不够自信,给面试官一个好的印象,面试成功的几率就会大很多,加油吧,骚年!

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值