小编Ank*_*bey的帖子

查找包含另一个字符串中字符串的所有字符的最小窗口的长度

最近我接受了采访.我做得不好因为我遇到了以下问题

假设给出了一个序列:ADCBDABCDACD和搜索序列如下:ACD

任务是在给定字符串中查找包含保留顺序的搜索字符串的所有字符的开始和结束索引.

输出:假设索引从1开始:

开始指数10结束指数12

解释:

1.start/end index分别不是1/3,因为虽然它们包含字符串但是没有维护顺序

2.start/end index分别不是1/5,因为它们虽然包含顺序的字符串,但长度不是最佳的

3.start/end index分别不是6/9,因为它们虽然包含顺序中的字符串但长度不是最佳的

请查看如何查找包含给定字符串中所有字符的最小子字符串?.

但上述问题不同,因为订单未得到维护.我仍在努力维持索引.任何帮助,将不胜感激 .谢谢

c string algorithm

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

在给定的ASCII文本文件中匹配CLOSEST文件

问题:

我有大约20个ASCII文本文件,每个文件的大小小于10 ^ 9字节.给出了另一个ASCII文本文件(比如说FOO).程序是战略性地匹配FOO的内容与给定的20个文件,并打印CLOSEST匹配文件的名称.FOO的内容可能只是部分匹配.

由于文件太大,我想知道:

1.如何使用信息检索(因为我对IR不太了解)

2.我应该使用哪种数据结构来存储这些信息

3.实现它的最佳算法是什么.

我知道我问的太多了,但是我真的陷入了这个问题,而且无法找到如何接近.任何帮助都会得到赞赏.谢谢!

algorithm ascii information-retrieval data-structures

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

在函数完成其任务后定期执行函数

我正在使用C#和xaml构建一个Windows应用商店应用.我需要在一定的时间间隔后刷新数据(从服务器获取新数据).我使用ThreadPoolTimer定期执行刷新功能,如下所示:

   TimeSpan period = TimeSpan.FromMinutes(15); 
   ThreadPoolTimer PeriodicTimer =  ThreadPoolTimer.CreatePeriodicTimer(async(source)=> {  
   n++; 
   Debug.WriteLine("hello" + n);
   await dp.RefreshAsync(); //Function to refresh the data
   await Dispatcher.RunAsync(CoreDispatcherPriority.High,
                () =>
                {
                    bv.Text = "timer thread" + n;

                });

        }, period);
Run Code Online (Sandbox Code Playgroud)

这工作正常.唯一的问题是如果在将下一个实例提交给线程池之前刷新函数没有完成该怎么办.有没有办法指定执行之间的差距.

第1步:执行刷新功能(花费任何时间)

第2步:刷新功能完成其执行

步骤3:间隙15分钟然后转到步骤1

刷新功能执行.执行结束后15分钟,它再次执行.

c# threadpool visual-studio-2012 windows-store-apps

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

在漫游设置中存储复杂数据类型

我想要的是:我正在尝试在漫游设置中存储复杂的数据类型.这是我的对象的样子:

public abstract class Query
{
    [DataMember]
    public Cube Cube { get; private set; }

    [DataMember]
    public List<Filter> Filters { get; private set; }
    [DataMember]

    public Slicer Slicer { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

有什么问题:

Query q = ...;
RoamingSettings.Values["query"] = q;
Run Code Online (Sandbox Code Playgroud)

给出错误:

数据类型不受支持

我尝试过:在复合设置的不同字段中存储Query类的不同成员.但是Query类的数据成员又是不同类的对象,因此不能存储在composite.Values ["setting"]中.

请参考: windows 8 app漫游存储与自定义类.使用复合设置回答了这个问题,但不适用于我的问题.

我该怎么办?

c# exception-handling roaming windows-store-apps

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

任何文化的DateTime.TryParse

这有很多线程,但我仍然被阻止在以下方面:

是)我有的:

我正在尝试构建windows phone App,它将选择一个人的出生日期

代码背后:

string dateString = "";

  DateTime dt = DateTime.Now;
     if (value != null && DateTime.TryParse(value.ToString(),  culture, DateTimeStyles.None, out dt))
  {
    if (dt.Equals(DateTime.MinValue))
    {
      //dateString = "mm/dd/yyyy";
      return "";
    }
    else
      return dt.ToShortDateString();
  }
  else
    return dateString;
}
Run Code Online (Sandbox Code Playgroud)

我需要的:

我希望它解析任何应该是文化独立的日期格式.

我尝试了什么:

1.我尝试使用CultureInfo.InvariantCultute,CultureInfo.CurrentCulture

2.使用ExactParser如下:

string[] formats = {"M/d/yyyy h:mm:ss tt", "M/d/yyyy h:mm tt", "d/M/yyyy hh:mm:ss tt", "dd/MM/yyyy hh:mm:ss tt", "d/M/yyyy" , "dd/MM/yyyy" , "M/d/yyyy" ,"MM/dd/yyyy", 
               "MM/dd/yyyy hh:mm:ss", "M/d/yyyy h:mm:ss",   "dd/MM/yyyy hh:mm:ss", "d/M/yyyy h:mm:ss",
               "M/d/yyyy hh:mm tt", "M/d/yyyy …
Run Code Online (Sandbox Code Playgroud)

.net c# datetime parsing

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