Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >20181104_ARTS_week19

20181104_ARTS_week19

作者头像
Bob.Chen
发布于 2018-12-06 01:50:43
发布于 2018-12-06 01:50:43
31900
代码可运行
举报
运行总次数:0
代码可运行

第 19 周,算法题 Search Insert Position,看了一篇对比 Yarn 和 npm 的文章,介绍了 JavaScript 中 new 运算符的一些坑,分享了对于业务和技术重构的一些看法。

Algorithm

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
/**
 * Search Insert Position
 * https://leetcode.com/problems/search-insert-position/
 *
 * @param {number[]} nums
 * @param {number} target
 * @return {number}
 */
var searchInsert = function(nums, target) {
    for (var i=0; i<nums.length; i+=1) {
        if (target <=nums[i]) {
            return i
        }
    }
    return  i
};

console.log(searchInsert([1,3,5,6], 5)) // 2

比较简单的一题,数组都排好序了,直接 loop 一下就好。

Review

Yarn vs npm - which Node package manager to use in 2018?

https://blog.risingstack.com/yarn-vs-npm-node-js-package-managers/

文中作者分别对比了 Yarn 与 npm 的优缺点,最后推荐了 npm。

在我看来,相比 npm,Yarn 最大的优点是会把装过的包缓存下来,这样下次再用到的时候就不用等待漫长的下载时间了。

不过由于 npm 是直接打包在 node 里,而且已经是 node 中使用最广泛的包管理工具,所以我还是建议优先使用 npm。

Tip

分享个 JavaScript 中关于 new 运算符的特性。 一般情况下 new 运算符会返回一个对象:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
function Thing() {
  this.one = 1;
  this.two = 2;
}

var myThing = new Thing();

myThing.one // 1
myThing.two // 2

但是如果我们尝试在 Thing() 中 return 一个值:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
function Thing() {
  this.one = 1;
  this.two = 2;

  return 5;
}

var myThing = new Thing();

myThing.one // 1
myThing.two // 2

会发现 return 的值不见了,并没有什么用。

如果我们换一种方式,尝试 return 一个对象。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
function Thing() {
  this.one = 1;
  this.two = 2;

  return {
    three: 3,
    four: 4
  };
}

var myThing = new Thing();

console.log(myThing); // Object {three: 3, four: 4}

结果返回的对象取代了原本我们的对象。 这可以说是 new 运算符的一个特性,如果返回的是原始类型(数字,string 等)就会被忽略,而如果返回的是非原始类型(Object,Array,function 等)就会替代原来的对象。

这个『特性』需要注意,一不小心就踩到坑了。

Share

这周思考一个问题,对于接手一个旧项目是否要彻底重构?

新接手几个项目,组里有人想彻底重构一把。对于这个问题我是这样看的,最好是分步骤来,遇到页面有较大改动的,可以进行重构。

因为业务不等人,不可能有机会停下来让你做 2-3 个月的重构,而且老项目单元测试,文档,自动化测试都相对缺失,重构的质量进度都不好把控。

其实,很多做技术的人只关注技术,总想用最新最酷的技术。能和业务情况结合当然最好,如果不能,技术还是要做些妥协的,毕竟业务做好了,公司活下来是一切的基础

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-11-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【leetcode刷题】20T20-搜索插入位置
https://leetcode-cn.com/problems/search-insert-position
木又AI帮
2020/02/25
2830
打卡群2刷题总结1002——搜索插入位置
https://leetcode-cn.com/problems/search-insert-position/
木又AI帮
2020/10/10
3830
LeetCode - 搜索插入位置
LeetCode第35题,难度简单。接下去的题目可能会慢慢变成两三年之前做的题目了....清完库存我再接着解题,写题解...
晓痴
2019/08/19
5180
Dimple在左耳听风ARTS打卡(十一)
今天是端午节,也是高考的日子。小编当年是过了端午节高考的,今年也是赶上了,凑到了一起。你们家里人有要高考的吗?小编祝福他们。同时也祝各位端午节快乐!
程序员小跃
2019/12/27
3720
LeetCode 35. 搜索插入位置(二分查找)
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。
Michael阿明
2021/02/20
3910
LeetCode 35. 搜索插入位置(二分查找)
【leetcode刷题】T7-Search Insert Position(搜索插入位置)
今天分享leetcode第7篇文章,也是leetcode第35题—Search Insert Position,地址是:https://leetcode.com/problems/search-insert-position/
木又AI帮
2019/07/17
4690
​LeetCode刷题实战35: 搜索插入位置
算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试。所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 !
程序员小猿
2021/01/20
2450
【LeetCode】35. 搜索插入位置
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。
韩旭051
2020/06/22
8840
画解算法:35. 搜索插入位置
https://leetcode-cn.com/problems/search-insert-position/
灵魂画师牧码
2019/06/27
3910
画解算法:35. 搜索插入位置
LeetCode - 35 - Search Insert Position
属于 Binary Search (opens new window) 的应用。
Cellinlab
2023/05/17
1540
二分法还需要练习练习
力扣题目链接:https://leetcode-cn.com/problems/search-insert-position/
代码随想录
2021/10/20
4200
二分搜索插入
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。
MickyInvQ
2021/03/02
2920
二分搜索插入
搜索插入位置
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。
你的益达
2020/08/05
3710
LeetCode题目35:搜索插入位置
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。
二环宇少
2020/08/13
3690
LeetCode - #35 搜索插入位置
我们社区陆续会将顾毅(**Netflix 增长黑客,《iOS 面试之道》作者,ACE 职业健身教练。微博:@故胤道长[1]**)的 Swift 算法题题解整理为文字版以方便大家学习与阅读。
Swift社区
2022/04/04
3730
LeetCode - #35 搜索插入位置
LeetCode-35. Search Insert Position | 搜索插入位置
Given a sorted array of distinct integers and a target value, return the index if the target is found. If not, return the index where it would be if it were inserted in order.
Zoctopus
2021/02/25
3620
leetcode必刷题目系列:35.搜索插入位置
https://leetcode-cn.com/problems/search-insert-position/
代码随想录
2020/06/19
3310
每天一道leetcode-35 搜索插入的位置
目前准备每天刷一道题leetcode的题目,以此来激励那些零基础入门的人,千万不要被什么科班和非科班的说法吓倒了,计算机这个行业只要你肯努力,没有什么逾越不了的鸿沟。
乔戈里
2019/09/17
2590
每天一道leetcode-35 搜索插入的位置
算法笔记(一)
给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。
chuckQu
2022/08/19
6240
Binary Search - 35. Search Insert Position
Given a sorted array and a target value, return the index if the target is found. If not, return the index where it would be if it were inserted in order.
ppxai
2020/09/23
4120
相关推荐
【leetcode刷题】20T20-搜索插入位置
更多 >
加入讨论
的问答专区 >
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档