小编Wil*_*l A的帖子

双向A*(A星)搜索

我正在实现双向A*搜索(双向,因为搜索同时从源和目标执行,当这两个搜索相遇时,我将拥有我的最短路径 - 至少有一些额外的逻辑抛出).

有没有人有任何采用单向A*和双向化(!)的经验 - 我可以期待什么样的性能提升?我估计它至少会将搜索时间减半或者减少 - 但是我可以看到更大的收益吗?我正在使用该算法来确定道路网络上的最短路线 - 如果这是相关的(我已经阅读了关于MS的"Reach"算法,但是想要采取婴儿步骤而不是直接进入).

algorithm shortest-path

20
推荐指数
1
解决办法
9846
查看次数

将字符输入到RichTextBox中的速度太慢,如何让速度更快?

当我使用键盘输入文字时,我看到编辑器窗口中的字符结尾,有点在键盘后面,它给我的工作带来了不便,如何使按键同时出现这些字符.

wpf wpf-controls

13
推荐指数
1
解决办法
1248
查看次数

SQL Server - 缺少NATURAL JOIN/x JOIN y USING(字段)

我刚刚阅读了自然连接/使用 - SQL92的功能,这些功能(遗憾地?)缺少SQL Server当前的保留节目.

有没有人来自支持SQL Server(或其他不支持的DBMS)的DBMS - 它们听起来有用,还是一堆蠕虫(听起来也可能!)?

sql t-sql sql-server

9
推荐指数
2
解决办法
1万
查看次数

C#DateTime时区减去问题

我有这行代码:

double seconds = new DateTime(2006,7,6,12,1,0,DateTimeKind.Local).Subtract(new DateTime(1970,1,1,0,0,0,DateTimeKind.Local).TotalSeconds;
Run Code Online (Sandbox Code Playgroud)

这不是我想要的正确号码,所以我尝试了以下方法:

double seconds = new DateTime(2006,7,6,12,1,0,DateTimeKind.Local).Subtract(new DateTime(1970,1,1,0,0,0,DateTimeKind.Utc).TotalSeconds;
Run Code Online (Sandbox Code Playgroud)

(不同之处在于,在一种情况下,我使用当地时间作为纪元,而在另一种情况下,我使用UTC).有趣的是,他们都给了我相同的价值,我不知道为什么会这样.我住在-600 GMT,所以DateTimeKind.Local实际上应该影响事情.

提前致谢!

c# timezone datetime

6
推荐指数
1
解决办法
2745
查看次数

iPhone:从某个位置挑选文件以上传到服务器

我正在制作一个客户端 - 服务器程序,用于从Mac桌面上的某个位置挑选文件,然后将其复制到iPhone模拟器中.然后,它将使用TCP协议将其上载到服务器.

任何人都可以建议如何做或可以建议一个我可以了解它的网站.我在互联网上得到以下代码,它会执行上述所需的任务吗?

if ( [[NSFileManager defaultManager] isReadableFileAtPath:source] )
    [[NSFileManager defaultManager] copyPath:source toPath:destination handler:nil];

[[NSWorkspace sharedWorkspace] performFileOperation:NSWorkspaceRecycleOperation source:foldername destination:@"" files:filenamesArray tag:&tag];
Run Code Online (Sandbox Code Playgroud)

iphone file-upload objective-c

6
推荐指数
1
解决办法
338
查看次数

在手动实现SQL Server数据库列的IDENTITY增量时避免竞争条件

我正在构建一个使用LINQ to SQL的ASP.NET MVC 2站点.在我的网站访问数据库的其中一个地方,我认为竞争条件是可能的.


数据库架构

以下是相关数据库表的一些列,命名为Revisions:

  • RevisionID - bigint,IDENTITY,PK
  • PostID - bigint,FK到Posts表的PK
  • EditNumber - int
  • RevisionText - nvarchar(max)

在我的网站上,用户可以提交帖子并稍后编辑帖子.原始海报以外的用户可以编辑帖子 - 因此可以同时在单个帖子上进行多次编辑.

提交帖子时,Posts会创建表格中的记录,以及Revisions表格中的记录,其中PostID设置为Posts记录的ID ,RevisionText设置为Post文本,EditNumber 设置为1.

当编辑一个帖子,只Revisions记录被创建,EditNumber被设定为比最新的编辑数量1高.

因此,EditNumber列指的是Post编辑的次数.


增加EditNumber

我在实现这些功能时遇到的挑战是增加EditNumber列.由于该列不能是IDENTITY,我必须手动操作它的值.

这是我的LINQ查询,用于确定新版本应具有的EditNumber:

using(var db = new DBDataContext())
{
    var rev = new Revision();
    rev.EditNumber = db.Revisions.Where(r => r.PostID == postID).Max(r => r.EditNumber) …
Run Code Online (Sandbox Code Playgroud)

c# sql-server asp.net-mvc race-condition linq-to-sql

2
推荐指数
1
解决办法
1083
查看次数

1
推荐指数
1
解决办法
106
查看次数