我来自C++背景,习惯于通过设置断点,查看调试器中的变量等来测试代码.
我现在正在进行Web开发(使用symfony框架).我真正想念的是在执行特定操作时无法设置断点(例如,点击了网址等).是否有免费的(GPL或其他许可证)PHP IDE,可以让我设置如上所述的断点等?
在开始之前,我必须说对于具有线性代数背景的人来说,这不是矩阵分解,因为你知道它.请阅读以下段落,以便更清楚地了解我要解决的问题.
以下是矩阵及其子矩阵的显着属性/定义:
这就是(空)主矩阵的样子.矩阵中的每个方块简称为方框.矩阵可以被视为一种"游戏板",例如棋盘.使用间隔标度(即实数)测量垂直轴,并使用单调增加的非负整数测量水平轴.

子矩阵的"形式"定义是它是主矩阵中包含的M个盒子的配置,满足标准:
垂直单位是主矩阵中垂直轴线之间的间隙.在下图中,垂直单位为100.

上面的图像说明了简单的子矩阵加法.带有橙色寄宿生/盒子的单位是子矩阵 - 构成我词汇的一部分的公认单位.您会注意到我在子矩阵中引入了更多注释.这是因为(使用国际象棋类比),我有两种类型的棋子可以在棋盘上使用.B表示黑色片,W(图中未示出)表示白色片.公认的单位(或词汇/子矩阵)有一个简单的等价关系,允许白件和黑件之间的转换.该关系可用于进一步分解子矩阵以仅使用黑色片,白色片或两者的组合.
为简单起见,我省略了指定等价关系.但是,如果有人认为所提出的问题并非"太难"而没有其他细节,我很乐意扩大范围.就目前而言,我正在努力使事情变得尽可能简单,以避免让人们混淆"信息过载".
子矩阵中的每个框包含一个有符号整数,表示项目的多个单位.盒子的每个"配置"(连同其带符号的整数和片段类型,即黑色或白色片段)被称为"被识别的单元".
子矩阵可以以它们重叠的方式放置在主矩阵中.无论"框"重叠在何处,所得子矩阵框中的单元数是组成框中单元数的总和(如上面第二幅图所示).
问题变得有点困难,因为上面定义的"识别单位"有时与其他"识别单位"组合形成另一个"识别单位" - 即子矩阵(即识别单位)是"完整单位".例如,在上面的第二图像中,被添加到矩阵中的识别单元本身可以进一步分解为"较小"子矩阵.
这种holarchy类似于如何(在物理化学),元素形成的化合物,其然后继续形成更加复杂的化合物(氨基酸,蛋白质等).
回到我们的问题,给定一个主矩阵M,我希望能够做到以下几点:
一世.识别主矩阵中包含的子矩阵(或已识别的单元).这是第一个"矩阵分解".(注意:子矩阵必须满足上面给出的标准)
II.对于每个识别的子矩阵,我希望能够识别它是否可以进一步分解为2个或更多个已识别的子矩阵.这个想法是迭代地分解在上面的步骤i中找到的子矩阵,直到达到指定的层次级别,或者直到我们有一组有限的子矩阵不能进一步分解.
我试图想出一个算法来帮助我做上面的(i)和(ii).我将在C++,Python或C#中实现逻辑(在不断增加的优先级中),这取决于哪个是最容易做的和/或我碰巧得到片段来让我开始实现算法.
我正在使用此处的说明,尝试检查发送到我的网络服务器的HTTP命令.
但是,我没有按照教程中的建议在控制台上看到HTTP命令.有谁知道如何在CLI上显示/调试HTTP命令?
我在Linux Ubuntu上运行Python 2.6.5
我正在为网站使用Paypal HTML API.Paypal似乎忽略了税收领域,反复支付.
这是一个错误吗?(我知道有一段时间了).有没有人设法在Paypal经常性付款中添加税收计算?
我正在建立一个Linux开发机器(Ubuntu 9.0.x).
我想知道Ubuntu上C++开发人员的最佳开发环境 - 给出我的背景(见下文).
我来自Windows背景,所以使用GUI比使用CLI更加轻松,尽管我希望随着时间的推移学习CLI命令.在Linux上开发方面,我希望能够有效并"实现目标".
我特别感兴趣的工具可以让我的生活更轻松:
1).项目管理2).通过GUI构建配置(而不是makefile编辑 - 至少目前为止).3).调试IDE,允许我设置断点和进/出/结束
如果IDE建议使用GUI来简化我向Linux的过渡,那么将是有用的,但也可以自定义(例如,可以接受手工编辑的make文件等 - 当我学会了如何创建它们时).这将使我以后可以更好地控制构建过程.
为了让我在Ubuntu桌面上以最短的时间内达到最大的工作效率,您会推荐哪一套工具?
那么:哪个应用程序(IDE)提供:(i).从Visual Studio最简单的过渡(理想情况下可以使用manully制作的make文件)(ii).广泛的调试功能,类似于Visual Studio
最新的Ubuntu(9.0.x)桌面操作系统?
我有一个涉及建模状态机的问题.
我设法做了一点知识工程和"逆向工程"一组原始确定性规则,确定状态和状态转换.
我想知道最佳做法是什么:
如何严格测试我的状态和状态转换,以确保系统不会最终处于未确定状态.
如何强制执行状态转换要求(例如,应该不可能直接从stateFoo转到StateFooBar,即向每个状态灌输关于它可以转换到的状态的'知识'.
理想情况下,我想尽可能使用基于模式的干净设计和模板.
我确实需要一个地方开始,我会感激任何指针(没有双关语意),这是我发送的方式.
是否有可能在Javascript中构建一个微观(概念证明)Web服务器?
有没有人这样做过?
编辑: 这里显然需要明确的澄清.问题最终是关于如何在浏览器的初始请求关闭后将数据从服务器推送到浏览器.换句话说,如何使浏览器接受服务器发起的后续请求.
是否需要在浏览器中安装基于javascript的Web服务器,还是有其他方法?
我已经阅读了许多强烈的观点(赞成和反对)SP或DS.
我正在用C++编写一个查询引擎(mySQL后端现在,虽然我可能决定使用C++ ORM).我无法决定是编写SP,还是动态创建SQL并将查询发送到数据库引擎.#
关于如何决定的任何提示?
我无法使用pyodbc连接到mySQl db.
这是我的脚本的片段:
import pyodbc
import csv
cnxn = pyodbc.connect("DRIVER={MySQL ODBC 3.51 Driver}; SERVER=localhost;DATABASE=mydb; UID=root; PASSWORD=thatwouldbetelling;")
crsr = cnxn.cursor()
with open('C:\\skunkworks\\archive\\data\\myfile.csv','r') as myfile:
rows = csv.reader(myfile, delimiter=',', quotechar='"')
for row in rows:
insert_str = 'INSERT into raw_data VALUES(something, something)'
print insert_str
#crsr.execute(insert_str)
cnxn.commit()
myfile.close()
Run Code Online (Sandbox Code Playgroud)
我在pyodbc.connect()行收到此错误:
pyodbc.Error:('IM002','[IM002] [Microsoft] [ODBC驱动程序管理器]未找到数据源名称且未指定默认驱动程序(0)(SQLDriverConnectW)')
我有另一个关于此错误的问题(以及一般的Python脚本).当我将其作为脚本运行时,它会无声地失败(我期待堆栈跟踪).我必须手动键入每一行以查找错误发生的位置.
我现在有点懒(没有异常处理) - 没有异常处理的Python脚本的这种正常行为是否会无声地失败?
[编辑]
我没有使用mysqldb,因为我已经在使用pyodbc从另一个源(MS Access)中提取数据.好吧,这不是一个很好的理由 - 但我已经在努力解决pyodbc了,我真的不想与另一个库/模块/软件包(无论是用Python调用)进行"一次性"工作.我只想将Windows环境中各种数据源的数据移动到Linux上的mySQl.一旦在Linux上,我将重新回到terra firma.
这就是整个'剧本'.我刚刚将上面的代码保存到扩展名为.py的文件中,并在命令行运行python myscript.py.我在我的XP机器上运行它
在我自己动手之前,我想我应该先在这里问一下。
我希望对随机 SQL 命令进行一些基本解析,以便:
我见过一些 SQL 解析器类,但它们对于上述用例来说太“重量级”了。
有人知道至少具有一些所需功能的轻量级类吗?
最坏的情况,如果我必须编写一个解析器,那么编写这样一个解析器的最佳方法是什么(通常,要编写一个解析器,我通常会使用 PHP 中不可用的工具),关于如何编写解析器的任何提示编写一个“粗略且准备就绪”的类来进行此解析?
//rough sketch
<?php
class SqlParser()
{
protected $sqlstr;
protected $m_tablenames = array();
protected $m_fieldnames = array();
public function __construct($sql){
$this->sqlstr = $sqlcmd;
$this->parseString($sqlstr);
}
public function __destroy(){}
public function getTableNames(){ return m_tablenames; }
public function getFieldNames(){ return m_fieldnames; }
private function parseString($sql)
{
//TODO
}
}
?>
Run Code Online (Sandbox Code Playgroud)
我希望解析尽可能与 SQL 方言无关(即不依赖于任何特定的 SQL 方言或数据库特定的 SQL)。
如果这是不可能的,那么我将使用的 SQL 方言是 PostgreSQL。
c++ ×3
python ×3
mysql ×2
php ×2
sql ×2
breakpoints ×1
c# ×1
debugging ×1
gcc ×1
gdb ×1
javascript ×1
paypal ×1
php-ide ×1
postgresql ×1
pyodbc ×1
state ×1
ubuntu-9.04 ×1
urllib2 ×1