题解 | 向量叉乘

向量叉乘

https://www.nowcoder.com/practice/2b2dc309c15f4b19949a03455ff3277c

class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 计算出这两个向量叉乘的结果
     * @param vector1 int整型vector 
     * @param vector2 int整型vector 
     * @return int整型vector
     */
    vector<int> crossTimes(vector<int>& vector1, vector<int>& vector2) {
        // write code here
        /*三维向量叉乘公式:
        对于向量u、v,设u=(x1, y1, z1) ,v=(x2, y2, z2)
        叉乘向量n= (y1z2 - y2z1, x2z1-z2x1, x1y2 -x2y1)*/
	  //以下是带公式的计算,设出x、y和z是为了代码的可读性
        int x{},y{},z{};
        x=vector1[1]*vector2[2]-vector1[2]*vector2[1];
        y=vector2[0]*vector1[2]-vector2[2]*vector1[0];
        z=vector1[0]*vector2[1]-vector2[0]*vector1[1];

        vector<int> a={x,y,z};//因为只能返回一个值,这里另设了一个vector变量
        
        return a;
    }
};

全部评论

相关推荐

10-17 23:18
已编辑
西北农林科技大学 Web前端
独行m:给25可以试试,但他只能给12,那就是纯纯的事精
秋招,不懂就问
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务