JavaScript版LeetCode刷题总结:题号1232点缀成线、题号589N叉树的前序遍历、题号496 下一个更大元素。

 

一、题号1232:点缀成线

 1.1 思路分析:

1、判断给定坐标值组成的数组中的元素是否在一条直线上。首先想到到可以是通过斜率来进行判断。

2、通过斜率来进行判断就不可避免的用到了除法,在计算机运算中,除法所耗费的资源比乘法多很多,而且有可能因为截断精度的问题造成问题。除此之外,需要注意到与X轴垂直时如何进行判断是否位于一条直线上,因此不太建议使用除法,虽然本例可以使用此种方式达到提交通过的目的。

3、解法二是使用到了线性代数中的二维向量如果线性相关的时候,则其共线,且所拼接的二阶矩阵的行列式值为0.

 

1.2 解法一:通过斜率计算来判断的解法如下所示:

var checkStraightLine = function(coordinates) {
    //1、判断给定坐标点组成的数组中的元素是否在同一条直线上
    //先判断特殊情况,如果数组的长度不大于2,则显然在一条直线
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值