小编Hen*_*man的帖子

二维网格问题的算法?

老实说,这是一个任务问题,但我无法找到解决方案.请记住,我不是要求答案,只是一些指导.

问题:设计一个在O(n)时间(线性)运行的算法,该算法可以在2D网格上定位单个可疑房屋(点).如果消耗等于或大于其两个垂直和两个水平邻居的电力消耗是可疑的.注意:只想要一个可疑的房子被退回

解决方案:甚至不确定如何实现这样的解决方案.如果你检查n个房子,你也可以检查周围的四个邻居.4n/n ^ 2,简化为4/n.这意味着随着网格的扩展,它不太可能找到可疑的房子.

我尝试过: - 不同的数据结构(大多数是nlogn) - 折叠网格(再次nlogn)

提前致谢.

编辑:

我的错误,网格是(nxn)使房屋数量n ^ 2,抱歉混乱.

EDIT2:

这确实是个问题,也许我读错了?

警方正在寻找电力消耗特别大的房屋.为了简化问题,想象一下他们正在调查在n×n网格上布置的房屋.电网上的每个房屋都有一些耗电量e(i,j).如果房屋的电力消耗等于或大于其垂直和水平邻居的每一个,警察会认为该房屋是可疑的.设计一个在O(n)时间内运行并返回可疑房屋位置的算法.

algorithm multidimensional-array data-structures

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

如何计算c#.net中oledbconnection中的总行数

如何计算c#.net中oledbconnection中的总行数

我想要计算我的表中有多少行.

                string dataReader = "SELECT count(*) from `Email_account_list`";
                OleDbCommand command_reader = new OleDbCommand(dataReader, myConnection);
                OleDbDataReader row_reader = command_reader.ExecuteReader();
Run Code Online (Sandbox Code Playgroud)

我将写什么函数来获取表中存在的总行数.

c# oledb ado.net

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

在C#中将DataGridView DataSource设置为DataTable的速度很慢

我有一个DataTable,完全填充,我想设置为DatagridView:

gdv.DataSource = dt;
Run Code Online (Sandbox Code Playgroud)

然而,这非常缓慢.DataTable的填充速度非常快,但上面这一行需要很长时间.有没有办法加快速度或在另一个线程中执行它?

在这一点之后没有互动.只是上面的简单陈述!

谢谢.

c# datatable datagridview backgroundworker winforms

3
推荐指数
2
解决办法
6894
查看次数

我如何测试Relaycommand?

我正在阅读这篇关于MVVM的
MSDN文章.我现在正在看图#15中的RelayCommand.假装我想测试这个SaveCommand.我该怎么办?我正在使用NUnit和Rhino Mocks 3.6

c# wpf rhino-mocks mvvm relaycommand

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

如何更改此循环以不使用继续?

我使用continue语句来创建这个简单的程序并获得所需的输出.

for(m=1;m<=3;m++)
{
   for(n=1;n<=2;n++)
   {
      if(m==n)
         continue;
      cout<<m<<" "<<n<<endl;
   }
}
Run Code Online (Sandbox Code Playgroud)

输出:

1  2
2  1
3  1
3  2
Run Code Online (Sandbox Code Playgroud)

现在我想要它而不使用coninue语句.有什么方法可以做到吗?

c++

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

如何在C#中的一个循环中重命名多个按钮

我有一个类似战舰的程序,其中有一个10 x 10的网格按钮。在程序开始时,我希望所有按钮的文本都更改为“ ---”,这表明没有人在该坐标处射击。我似乎找不到一种在一个循环中重命名所有按钮的方法。所有按钮的名称均为b00,b01,b02 ...,显示其坐标。第一个数字是行,第二个数字是列。(即b69代表第7行,第10列)。

希望能对您有所帮助!

先感谢您!

路加

c# text loops button winforms

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

C# 面板列表

我想创建包含有关项目的详细信息的面板(包括左侧的缩略图),然后将它们添加到可滚动列表中。很像 iPhone 上的 iTunes 显示可用应用程序列表的方式。

我已经做了一些搜索,但到目前为止还没有找到任何帮助。

有没有人有任何想法或链接到他们想与我分享的样本。

提前致谢,罗布

c# list panel winforms

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

C#中的Image.FromStream()

我在VS 2010,.Net 4.0工作.在Windows窗体应用程序中,这没关系:

Image img = Image.FromStream(imagePart.GetStream());
Run Code Online (Sandbox Code Playgroud)

但是,在Wpf应用程序中,Image类来自System.Windows.Controls,这是无效的,因为它没有FromStream方法的定义.在Windows窗体中,Image类是System.Drawing.Image.

有没有办法在Wpf应用程序中使用FromStream?

c# wpf image

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

在组合框中选择最后添加的列表项

我使用组合框,不受 C# 中数据源的限制。

cmbBox.Items.Add("apple");
cmbBox.Items.Add("orange");
cmbBox.Items.Add("banana");
Run Code Online (Sandbox Code Playgroud)

现在我想将 SelectedIndex 设置为最终添加“banana”,但不能使用 cmbBox.SelectedIndex = cmbBox.Items.count -1; 因为组合框已排序!

请问有什么提示吗?

c# combobox winforms

3
推荐指数
2
解决办法
8548
查看次数

Blazor WebAssembly:如何在长时间运行的非异步进程中更新 UI

我有一些复杂的计算需要一段时间才能完成。(是的,我知道,客户端听起来可能不是执行它们的理想场所,但有充分的理由。)我希望页面随着计算的进行而更新结果。随着计算的进行,我可以让 UI 重新渲染,但不能正确更新结果。

请注意,计算本身并不是异步的,将它们包装起来Task.Run似乎没有帮助。这是演示问题的代码的简化版本:

@page "/AsyncTest"

<button type="button" class="btn btn-primary" @onclick="@(e => RunOnClick(e))">Run</button>
<br />
<div>Percent Complete = @PercentComplete %</div>

@code {
    private int PercentComplete = 0;

    private async Task RunOnClick(MouseEventArgs e) {
        for (PercentComplete = 0; PercentComplete < 100; PercentComplete += 20) {
            System.Console.WriteLine($"LongCalculation: PercentComplete = {PercentComplete}");

            await Task.Run(() => Calculation()); // Does not work.
            //await CalculationAsync();          // This works.

            StateHasChanged();
        }
    }

    private void Calculation() => System.Threading.Thread.Sleep(500);
    private async Task CalculationAsync() => await Task.Delay(500); …
Run Code Online (Sandbox Code Playgroud)

async-await blazor blazor-client-side

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