小编cas*_*One的帖子

声明Scala案例类有哪些缺点?

如果您正在编写使用大量漂亮,不可变数据结构的代码,则案例类似乎是天赐之物,只需一个关键字即可免费为您提供以下所有内容:

  • 默认情况下一切都是不可变的
  • Getters自动定义
  • Decent toString()实现
  • 兼容的equals()和hashCode()
  • Companion对象使用unapply()方法进行匹配

但是将不可变数据结构定义为案例类有什么缺点?

它对班级或其客户有什么限制?

您是否应该选择非案例类?

scala case-class

103
推荐指数
4
解决办法
2万
查看次数

编写一个返回给定字符串中最长回文的函数

例如字符串"abaccddccefe"中的"ccddcc"

我想到了一个解决方案,但它在O(n ^ 2)时间运行

Algo 1:

步骤:它是一种强力方法

  1. 对于j = i + 1到j小于array.length,
    对于i = 1到i小于array.length -1
    , 有2个for循环
  2. 这样,您可以从数组中获取每个可能组合的子字符串
  3. 有一个回文功能,检查字符串是否是回文
  4. 所以对于每个子串(i,j)调用这个函数,如果它是一个回文存储它在一个字符串变量中
  5. 如果您找到下一个回文子串并且如果它大于当前回归,则将其替换为当前的回归.
  6. 最后你的字符串变量将有答案

问题:1.这个算法在O(n ^ 2)时间运行.

算法2:

  1. 反转字符串并将其存储在不同的数组中
  2. 现在找到两个数组之间最大的匹配子字符串
  3. 但这也是在O(n ^ 2)时间内运行的

你们能想到一个在更好的时间里运行的算法吗?如果可能的话O(n)时间

algorithm palindrome

101
推荐指数
4
解决办法
16万
查看次数

Eclipse的隐藏功能

好吧,这可能是一个蹩脚的问题,但每个人都以不同的方式使用这些东西.什么是这个IDE的最佳节省时间.

汤姆

java eclipse ide

97
推荐指数
34
解决办法
9万
查看次数

使用C#vs F#或F#vs C#有什么好处?

我为一家技术公司工作,该公司比产品发货做更多的原型设计.我刚才被问到C#和F#有什么区别,为什么MS创建F#以及它会比C#更好.

我一直在使用这种语言,我喜欢它,所以我可以很容易地继续讨论F#的强大功能,但是我缺乏C#的经验来说明为什么我们应该使用它而不是另一种.

使用C#vs F#或F#vs C#有什么好处?

.net c# f#

93
推荐指数
8
解决办法
14万
查看次数

为什么我们在循环中使用i作为计数器?

我们为什么要使用

for (int i = 0 ; i < count ; i++){ }
Run Code Online (Sandbox Code Playgroud)

为什么i

为什么不

for (int a = 0; a < count; a++){ }
Run Code Online (Sandbox Code Playgroud)

我这样做,你这样做,每个人都这样做,但是为什么?

*编辑

我发现了一个关于Fortran的古老谚语,它比正确的更有趣,它说"上帝是真实的,上面的其他一切都是整数".

"上帝"将是一个变量名称,g因为它将在真实域中,而上面的所有其他内容(不包括h为笑话的目的)将是一个整数.

原来的说法似乎是:"上帝是真实的,除非宣布整数".向所有人在博士论文中引用我的道歉.

variables naming loops

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

Ninject + MVC3 = InvalidOperationException:Sequence不包含任何元素

我创建了一个新的MVC3项目,点击F5,看到了示例页面.

然后我使用NuGet获得Ninject.MVC扩展.我根据Ninject文档,如何设置MVC3应用程序修改了我的global.asax :

public class MvcApplication : NinjectHttpApplication
{
   public static void RegisterGlobalFilters(GlobalFilterCollection filters)
   {
       filters.Add(new HandleErrorAttribute());
   }

   public static void RegisterRoutes(RouteCollection routes)
   {
       routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

       routes.MapRoute(
           "Default", // Route name
           "{controller}/{action}/{id}", // URL with parameters
           new { controller = "Home", action = "Index", 
               id = UrlParameter.Optional });
   }

   protected override IKernel CreateKernel()
   {
       var kernel = new StandardKernel();
       kernel.Load(Assembly.GetExecutingAssembly());
       return kernel;
   }

   protected override void OnApplicationStarted()
   {
       base.OnApplicationStarted();

       AreaRegistration.RegisterAllAreas();
       RegisterGlobalFilters(GlobalFilters.Filters);
       RegisterRoutes(RouteTable.Routes);
   }
}
Run Code Online (Sandbox Code Playgroud)

现在当我运行应用程序时,我得到了死亡的黄色屏幕,但有以下异常:

InvalidOperationException - …

ninject asp.net-mvc-3

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

从NuGet签入包到版本控制?

在NuGet之前,检查项目中使用的所有外部DLL是常见的"最佳实践".通常在一个Libs3rdParty目录中.

在使用NuGet时,我是否应该在packages目录中办理登机手续,或者有没有办法让MSBuild从nuget Feed自动下载所需的软件包?

msbuild version-control nuget

87
推荐指数
4
解决办法
2万
查看次数

学习/实施设计模式(适用于新手)

我是一个迷茫的新手和业余爱好者程序员,试图抓住这个,所以请原谅我,如果我的问题有点过时或没有多大意义.

关于设计模式的使用,我看到很多关于SO的问题,我想知道是否有人有很好的资源来学习和实现设计模式?我理解一般的想法,并知道如何/何时使用它们(单身人士,工厂方法),但我知道我错过了.

(以防万一,我的偏好语言是C#,但我可以从其他语言的例子中学习)

oop design-patterns

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

IFrame(HTML)是否已过时?

得到相互矛盾的信息,希望他们不是.我无法想象它的支持会停止,因为很多网站都使用它们.

关于此的一些其他问题:

  1. 他们为什么要淘汰这个标签?
  2. 它的替代品吗?

html iframe obsolete

85
推荐指数
10
解决办法
6万
查看次数

当在factory_girl中使用时,Faker正在生成重复数据

我正在尝试使用Faker gem将一些假数据填充到工厂中:

Factory.define :user do |user|
  user.first_name Faker::Name::first_name
  user.last_name Faker::Name::last_name
  user.sequence(:email) {|n| "user#{n}@blow.com" }
end
Run Code Online (Sandbox Code Playgroud)

但是,虽然我希望这会生成具有不同first_name和last_names的用户,但每个用户都是相同的:

>> Factory(:user)
=> #<User id: 16, email: "user7@blow.com", created_at: "2011-03-18 18:29:33",     
updated_at: "2011-03-18 18:29:33", first_name: "Bailey", last_name: "Durgan">
>> Factory(:user)
=> #<User id: 17, email: "user8@blow.com", created_at: "2011-03-18 18:29:39", 
updated_at: "2011-03-18 18:29:39", first_name: "Bailey", last_name: "Durgan">
Run Code Online (Sandbox Code Playgroud)

如何让Faker gem为每个用户生成新名称,而不仅仅重用原始用户?

ruby-on-rails factory-bot

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