小编Vik*_*ren的帖子

列表性能的长度为n的子序列

我实现了这个答案的一个版本/sf/answers/694429781/(我不知道回答的人的意图是什么)

sublistofsize 0 _        = [[]]
sublistofsize _ []       = []
sublistofsize n (x : xs) = sublistsThatStartWithX ++ sublistsThatDontStartWithX
  where sublistsThatStartWithX = map (x:) $ sublistofsize (n-1) xs
        sublistsThatDontStartWithX = sublistofsize n xs
Run Code Online (Sandbox Code Playgroud)

我不确定的是什么 sublistsThatStartWithX = map (x:) $ sublistofsize (n-1) xs

我假设map(x :)在性能方面提出了问题,但不确定如何解决它.我做过剖析print $ length $ sublistofsize 5 $ primesToTakeFrom 50

COST CENTRE                                  MODULE                                        no.     entries  %time %alloc   %time %alloc
sublistofsize                             Main                                          112     4739871   46.9   39.9    96.9  100.0
 sublistofsize.sublistsThatDontStartWithX Main                                          124     2369935    2.2    0.0     2.2 …
Run Code Online (Sandbox Code Playgroud)

performance haskell

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

找到非详尽的模式

我能以某种方式看到haskell尝试使用的模式吗?它适用于较小的例子,但在较大的例子上崩溃,我很难找到它可能是什么情况.

euler18 :: [[Integer]]
euler18 = pathPyr minipyr

pathPyr xss = path [(head xss)] (tail xss)

minipyr = [[3],[7,4],[2,4,6]]
pyramid = [[75], [95,64], [17,47,82], [18,35,87,10], [20,4,82,47,65], [19,1,23,75,3,34], [88,2,77,73,7,63,67], [99,65,4,28,6,16,70,92], [41,41,26,56,83,40,80,70,33], [41,48,72,33,47,32,37,16,94,29], [53,71,44,65,25,43,91,52,97,51,14], [70,11,33,28,77,73,17,78,39,68,17,57], [91,71,52,38,17,14,91,43,58,50,27,29,48], [63,66,4,68,89,53,67,30,73,16,69,87,40,31], [4,62,98,27,23,9,70,98,73,93,38,53,60,4,23]]

path :: [[Integer]] -> [[Integer]] -> [[Integer]]
path xss (ys:[])  = extendpath xss ys
path xss (ys:yss) = path (extendpath xss ys) yss

extendpath :: [[Integer]] -> [Integer] -> [[Integer]]
extendpath (xs:[]) (y1:y2:[]) = [y1:xs,y2:xs]
extendpath (xs:xss) (y1:y2:ys) = [y1:xs,y2:xs] ++ extendpath xss (y2:ys) …
Run Code Online (Sandbox Code Playgroud)

haskell pattern-matching

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

groupBy没有按照我的预期行事,我在寻找什么?

isPermutation :: (Ord a) => [a] -> [a] -> Bool
isPermutation x y = sort x == sort y

isPermutation "123" "312" -> True
isPermutation "123" "111" -> False

groupBy isPermutation ["123","3","321"] -> ["123","3","321"] <- What I get

groupBy isPermutation ["123","3","321"] -> [["123","321"],"3"] <- What I would want
Run Code Online (Sandbox Code Playgroud)

是否有一个功能将列表中共享相同属性的项目组合在一起?

grouping haskell

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

得到细胞apache poi的名字

我有一个Cell对象,我怎样才能获得该单元格的名称?

想要一个功能,如:

String name = myCell.getName();
Run Code Online (Sandbox Code Playgroud)

在Excel中,我在名称框中命名,所以我不想得到'B4',我想得到像"InterestRate"这样的名字.

找不到这样的方法,我可以通过其他方式实现吗?

java excel apache-poi

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

getLine x次haskell

基于Hackerrank的问题

我的问题是如何在stdIn上进行getLine t次?

main = do
    t <- getInt
    let x = [divisorsInNumber unsafeGetInt | a <-[1..t] ]
    print x

getInt :: IO Int
getInt = fmap read getLine

unsafeGetInt :: Int
unsafeGetInt = unsafePerformIO getInt

divisorsInNumber n = length $ filter (== True) $ map (isDivisor n) (integralToListOfInts n)
Run Code Online (Sandbox Code Playgroud)

io haskell stream

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

Gerrit合并两次提交

我有这个问题

master -> First commit (BROKEN) -> Second commit (Fix of previous commit)
Run Code Online (Sandbox Code Playgroud)

我应该如何解决该问题(应该不会发生,应该是第一次提交的修订而不是第二次提交)?

我可以以某种方式修改/合并Gerrit GUI中的两个提交吗?

不是我的承诺,所以不要在本地

git gerrit

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

java中Weblogic设置系统属性及使用

我在本地运行 Weblogic,但也会在生产环境中在 weblogic 服务器管理的服务器实例上运行

-DRUNTIME_ENVIRONMENT=LOCALHEST我已经在 Weblogic 中使用“服务器”->“配置”->“服务器启动”->“参数”菜单项下的“”设置了系统属性:

我的java文件,我有System.out.println("ENVR_:" + System.getProperty("RUNTIME_ENVIRONMENT"));

它打印 null,是否有一些我错过的参数?

java weblogic system-properties

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

Java中为什么(整数)222!=(整数)222?

这是正确的(Integer) 1 == (Integer) 1,这似乎是合法的.

那么为什么它要进行(Integer) 222平等游览 呢?

java integer equality equals

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

如何在java中创建自定义数据类型?

我想在Java中创建一个自定义数据类型,例如数据类型 Email ,具有以下方法 isValidate(String email),isEmailExist(String email),getDomain(String email), get Id(String email),就像java中的 Integer 类。

Integer 是一个类,我可以初始化 Integer 类的对象,如下所示:

Integer i = 100;
Run Code Online (Sandbox Code Playgroud)

我创建了我的班级电子邮件,我想按如下方式初始化它

Email e = "sam";
Run Code Online (Sandbox Code Playgroud)

我如何在我的电子邮件类中执行此功能。

导入 java.util.StringTokenizer;
导入java.util.regex.Matcher;
导入java.util.regex.Pattern;

公开课邮箱 { 私人字符串电子邮件; 公共电子邮件(字符串电子邮件) { this.email=电子邮件; }

Email() {  
}

public Boolean isvalid(String email)
{
Run Code Online (Sandbox Code Playgroud)

字符串lastToken = null; 模式 p = Pattern.compile(".+@.+\.[az]+"); // 将给定的字符串与模式进行匹配 匹配器 m = p.matcher(email); // 检查是否找到匹配项 布尔matchFound = m.matches(); StringTokenizer st = new StringTokenizer(email, "."); while (st.hasMoreTokens()) { 最后令牌 = st.nextToken(); }

if (matchFound && lastToken.length() …

java

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

单数和复数相同的项集合的Java命名约定

我想创建一个名为Series的类(包含有关此电视剧的剧集和信息)

然后我有一个

List<Series> series;
Run Code Online (Sandbox Code Playgroud)

如果我想循环这个集合,我希望它看起来像:

for (Series series : series) {}
Run Code Online (Sandbox Code Playgroud)

我应该如何以良好的方式区分系列中的单个项目和系列集合?或许将它命名为seriesCollection会更好吗?

java foreach naming

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