Tag: matrix

查找表示行sortingmatrix中的最小整数的行

在最近的Java电话采访中,我被问到了这个问题: 给你一个NxN二进制(0-1)matrix,它具有以下属性: 每一行都被sorting(0的序列后跟1的序列) 每行代表一个无符号整数(通过读取位) 每一行都是唯一的 例: 0 1 1 1 1 1 0 0 1 每行中的位值被sorting,行代表整数3,7和1。 find表示最小整数的行。 在上面的例子中,答案是第3行,代表整数1。 我开始用二次复杂的蛮力。 面试官回答说,我不是在利用已分类的财产。 想了很多,我在每一行使用二进制search,它来到O(nlogn)。 他问我能不能进一步改进。 我想了很多,但未能改善。 如果有任何人可以给予任何指示,我将不胜感激。 另一个例子: 0 1 1 1 0 0 0 1 0 0 0 0 1 1 1 1 答案将是第3行,代表整数0。

我如何创buildR中的相关matrix?

我有92套同types的数据。 我想为任何两种可能的组合做一个相关matrix。 即我想要一个92×92的matrix。 使得元素(ci,cj)应该是ci和cj之间的相关性。 我怎么做?

将Corona SDK中的瓷砖拼接成一个突破游戏网格的单词?

我有一个游戏项目来重新实施Breakout 。 我想显示两个单词,每个单词在一行。 他们join了砖块。 里面,第一行是第一个名字,左alignment。 底线是最后一个名字,右alignment。 他们是从文本框input,并呈现如下所示: 每经过一秒钟,屏幕会向网格添加一个可configuration数量的砖块(例如,每秒五块砖块),直到两个单词显示完成。 我显示了从matrix(0,1)创build的字母表字母。 …但我不知道如何将它们合并成一个单词。 我怎样才能join这些信件? 这是我到目前为止: Bricks.lua local Bricks = display.newGroup() — static object local Events = require("Events") local Levels = require("Levels") local sound = require("Sound") local physics = require("physics") local Sprites = require("Sprites") local Func = require("Func") local brickSpriteData = { { name = "brick", frames = {Sprites.brick} […]

为什么四元数用于旋转?

我是一名物理学家,一直在学习一些编程知识,并且遇到了很多使用四元数旋转的人,而不是用matrix/vectorforms写东西。 在物理学中,我们没有使用四元数有很好的理由(尽pipe偶尔讲述关于汉密尔顿/吉布斯等的奇怪故事)。 物理学要求我们的描述具有良好的分析行为(这有一个精确定义的含义,但是在某些技术方面远远超出了正常介绍类的教导,所以我不会详细讨论)。 事实certificate,四元数不具有这种好的行为,所以它们没有用,vector/matrix做,所以我们使用它们。 然而,受限于不使用任何分析结构的刚性旋转和描述,三维旋转可以用任何方式(或其他几种方式)等效描述。 通常,我们只需要一个点X =(x,y,z)到一个新的点X'=(x',y',z')的映射,受X 2 = X'2的限制。 还有很多事情是这样做的。 天真的方法是画出三angular形,并使用三angular函数,或者使用点(x,y,z)和vector(x,y,z)之间的同构和函数f(X)= X'和(x,y,z) T (a,b,c)(x',y',…)的matrixMX = X',或者使用四元数,或者沿着新的vector投影出旧vector的分量。 z')等 从math的angular度来看,这些描述在这个环境中是等价的(作为一个定理)。 他们都有相同数量的自由度,相同数量的限制等等。 那么,为什么四元数似乎更偏向于vector? 我看到的常见原因是没有万向节锁或数字问题。 没有万向节锁的说法似乎很奇怪,因为这只是一个欧拉angular的问题。 这也只是一个坐标问题(就像极坐标中r = 0的奇点(雅可比行列式)),这意味着它只是一个局部问题,可以通过切换坐标,旋转退化,或者使用两个重叠的坐标系。 我对数字问题不太确定,因为我不清楚这些(以及其他方法)是如何实施的。 我已经读过,重新归一化四元数比旋转matrix更容易,但这只适用于一般matrix; 一个旋转具有额外的约束,这个约束(这是四元数定义内置的)(事实上,这是必须的,因为它们具有相同的自由度)。 那么,四元数使用vector或其他select的原因是什么?

R中matrix的逆

我想知道什么是你推荐的方法来计算matrix的逆? 我发现的方式似乎并不令人满意。 例如, > c=rbind(c(1, -1/4), c(-1/4, 1)) > c [,1] [,2] [1,] 1.00 -0.25 [2,] -0.25 1.00 > inv(c) Error: could not find function "inv" > solve(c) [,1] [,2] [1,] 1.0666667 0.2666667 [2,] 0.2666667 1.0666667 > solve(c)*c [,1] [,2] [1,] 1.06666667 -0.06666667 [2,] -0.06666667 1.06666667 > qr.solve(c)*c [,1] [,2] [1,] 1.06666667 -0.06666667 [2,] -0.06666667 […]

我如何findpython中的一个numpymatrix的长度(或尺寸,大小)?

对于python中的一个numpymatrix from numpy import matrix A = matrix([[1,2],[3,4]]) 我怎样才能findmatrix的行(或列)的长度? 等同地,我如何知道行数或列数? 到目前为止,我发现的唯一解决scheme是: len(A) len(A[:,1]) len(A[1,:]) 它分别返回2,2和1。 从这我收集len()将返回的行数,所以我总是可以转置, len(AT)的列数。 然而,当读取行len(A)时,这感觉不令人满意并且是任意的,这不应该立即显而易见地返回行数。 它实际上不同于len([1,2])对2D python数组的作用,因为这会返回2。 那么,有没有一种更直观的方法来查找matrix的大小,还是这是我最好的?

numpymatrix向量乘法

当我乘以尺寸(nxn)*(nx 1)的两个numpy数组时,我得到一个大小为(nxn)的matrix。 遵循正常的matrix乘法规则,预期有(nx 1)个向量,但是我根本无法find关于在Python的Numpy模块中如何完成的任何信息。 问题是我不想手动执行它来保持程序的速度。 示例代码如下所示: a = np.array([[ 5, 1 ,3], [ 1, 1 ,1], [ 1, 2 ,1]]) b = np.array([1, 2, 3]) print a*b >> [[5 2 9] [1 2 3] [1 4 3]] 我想要的是: print a*b >> [16 6 8]

C ++中的graphics问题有更好的邻接表或邻接matrix吗?

C ++中的graphics问题有哪些更好的邻接表或邻接matrix? 每个的优点和缺点是什么?

如何从R中的向量列表中创build一个matrix?

目标:从长度相等的向量列表中创build一个matrix,其中每个向量成为一行。 例: > a <- list() > for (i in 1:10) a[[i]] <- c(i,1:5) > a [[1]] [1] 1 1 2 3 4 5 [[2]] [1] 2 1 2 3 4 5 [[3]] [1] 3 1 2 3 4 5 [[4]] [1] 4 1 2 3 4 5 [[5]] [1] 5 1 2 3 4 […]

我怎样才能应用一个函数到matrix的每一行/列在MATLAB中?

你可以通过例如v + 1来向vector中的每个项目应用一个函数,或者你可以使用函数arrayfun 。 我怎样才能做到这一点matrix的每一行/列而不使用for循环?