问题列表 - 第45826页

有没有办法根据一系列插入/删除有效地重建集合?

注意:下面的代码恰好是C#,但实际上任何语言的答案对我都有帮助.

假设不是实际的集合(例如,a List<T>),我有一系列操作,每个操作看起来像这样:

struct ListOperation<T>
{
    public enum OperationType { Insert, Remove }

    public OperationType Type;
    public T Element; // irrelevant for OperationType.Remove
    public int Index;
}
Run Code Online (Sandbox Code Playgroud)

是否有某种方法可以根据一系列此类操作有效地 "重建"集合?

特别是,我希望避免显而易见(低效)的实现,基本上只为每个元素创建一个List<T>和调用Insert以及RemoveAt-both O(N)操作.


更新:假设操作的"序列"实际上是一个具体的集合,其计数是已知的,并且可以通过索引随机访问(ListOperation<T>[]例如,像a ).我们还要说结果集合的实际计数是已知的(但实际上,无论如何,通过计算插入和删除来计算O(N)是微不足道的).还有其他想法吗?

language-agnostic algorithm collections performance data-structures

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

/sbin/ldconfig.real:无法统计 /lib/x86_64-linux-gnu

当我在 Ubuntu 机器上运行 ldconfig 时,我收到警告:

/sbin/ldconfig.real:无法统计 /lib/x86_64-linux-gnu

据我所知,这还没有造成任何问题,但我想“修复”它,以防它稍后回来咬我。有谁知道我为什么收到此消息 - 以及如何解决它?

ubuntu

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

奇怪的PHP错误消息

当我运行一些我编写的PHP代码时,我得到以下消息:

您的SQL语法有错误; 查看与您的MySQL服务器版本对应的手册,以便在"条件,价格,名称,电子邮件"附近使用正确的语法VALUES('Fake Title','Fake Subhead','Fake Author'在第1行

我没有看到我的语法有什么问题,但是,这就像:

mysql_query("INSERT INTO table (x1, x2, x3) VALUES('$y1', '$y2', '$y3')");
Run Code Online (Sandbox Code Playgroud)

php mysql

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

使用spring控制器和不同的类在jsp中渲染数据

我想渲染数据

这就是我的jsp页面表的样子  这是表格的样子

我怎么做到这一点,

请帮我,

它给我带来了很多困惑,要定义多少个类以及哪些是字段.

谢谢

spring jsp spring-mvc

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

日期/时间维度

我正在设计一个数据仓库,我有一个棘手的时间问题.我需要的谷物是每小时(计算每小时事件的总计数),我还必须适应24小时内不方便拟合的换档模式(实际上'蓝色'换档可能不会覆盖相同几天的时间).

考虑到这一点,我正在考虑三种方法之一

  1. 一个时间维度,其中包含175K行.
  2. 雪花时间维度,日历维度中包含7300行,时间维度包含175k行
  3. 单独的维度,以便事实表具有事件日期和事件时间的外键.

我倾向于方法3,因为它允许在连接中单独引用小日历维度,但我会感激任何想法.

sql data-warehouse dimensions

10
推荐指数
2
解决办法
3957
查看次数

Visual Studio 2010 IntelliTrace

如您所知,IntelliTrace技术仅在Visual Studio 2010 Ultimate版本上可用,而且我不小心安装了Premium版本,因此我无法使用IntelliTrace.是否有任何与IntelliTrace相同/类似工作的扩展?或者我应该删除此版本,并安装Ultimate?:)

visual-studio-2010 intellitrace

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

加载www.google.com时,WebView会导致未捕获的TypeError

我正在使用WebView加载和呈现各种网站没有问题.奇怪的是,似乎导致错误的是www.google.com

加载此页面时,单击时"搜索"按钮不起作用.单击它时,我在LogCat中看到此错误(我还看到在页面加载期间报告的3个类似错误):

02-07 23:23:59.230:错误/ Web控制台(3721):未捕获的TypeError:无法在http://www.google.com/:342上调用null的方法'getItem'

我在onResume覆盖中启用JavaScript(以及其他内容):

    WebSettings settings = webView.getSettings();
    settings.setJavaScriptEnabled(true);
    settings.setBuiltInZoomControls(true);
    settings.setLoadWithOverviewMode(true);
    settings.setUseWideViewPort(true);
    settings.setDatabaseEnabled(true);
Run Code Online (Sandbox Code Playgroud)

知道什么可能导致这些错误吗?谢谢!

android webview android-webview

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

Java正则表达式是否优化了这种特定情况?

我想知道正则表达式如何工作,我的特殊正则表达式有一个看起来像这样的元素:

(word1|word2|wordn......)

单词的数量是几百个.
我想知道正则表达式引擎是否只是逐个测试单词,或者它是否优化了搜索以及它的方式.
任何指向良好文档的指针都会很好.

java regex

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

在插件中调用动作助手

在我的控制器/动作中,我可以调用动作助手

$this->_helper->getHelper('layout')->disableLayout();
Run Code Online (Sandbox Code Playgroud)

我想在插件中做同样的事情,所以我尝试了这个,但它不起作用.插件如何访问动作助手?

$controller = $this->getRequest()->getControllerName();
$controller->getHelper('layout')->disableLayout();
Run Code Online (Sandbox Code Playgroud)

php zend-framework

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

使用linq到实体和自定义IEqualityComparer的明显计数

我的自定义比较器似乎不起作用.我想要一些不同的对象,但我每次都得到1.即使查看数据库本身清楚地显示查询还有1个具有不同"TimeOfAction"值的实例.

 class TimeComparer : IEqualityComparer<Action>
{
    public bool Equals(Action a, Action b)
    {
        if (a.TimeOfAction == b.TimeOfAction)
            return true;
        else
            return false;
    }

    public int GetHashCode(Action obj)
    {
        return obj.ToString().ToLower().GetHashCode();
    }
}
Run Code Online (Sandbox Code Playgroud)

认为它可能是GetHashCode方法,因为我不太熟悉它的工作方式.这是linq查询.我转换为AsEnumerable,因为Linq to Entities不支持distinct方法.

DBEntities db = new DBEntities();

        IEnumerable<Action> query = 
                    from action in db.Action.AsEnumerable()
                    where action.TimeOfAction > new DateTime(2010, 11, 1, 0, 0, 0)
                    where action.TimeOfAction < new DateTime(2011, 2, 7, 0, 0, 0)
                    where action.EntityName == "seant"
                    select action;

var count = query.   
            Distinct(new TimeComparer()).Count();
Run Code Online (Sandbox Code Playgroud)

c# linq linq-to-entities distinct

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