我正在尝试使用css网格布局创建砌体布局.网格中的所有项目都具有可变高度.我不知道会有什么东西.所以我不能grid-row为每个项目定义.是否可以在列中的上一个结尾之后立即启动每个新项目?
代码我正在尝试:
.wrapper {
display: grid;
grid-template-columns: repeat(auto-fill, 330px);
align-items: flex-start;
grid-column-gap: 10px;
grid-row-gap: 50px;
}
.item {
background: black;
border-radius: 5px;
}Run Code Online (Sandbox Code Playgroud)
<div class="wrapper">
<div class="item" style="height:50px"></div>
<div class="item" style="height:100px"></div>
<div class="item" style="height:30px"></div>
<div class="item" style="height:90px"></div>
<div class="item" style="height:80px"></div>
<div class="item" style="height:50px"></div>
<div class="item" style="height:70px"></div>
<div class="item" style="height:40px"></div>
</div>Run Code Online (Sandbox Code Playgroud)
有一组例如(1,4,2,5,7,6,9,8,3).我们计算其first difference(FD)的方式如下:firstDifference[i] = inputArray[i+1] - inputArray[i].inputArray是原始集.在示例中,情况是(1,4,2,5,7,6,9,8,3).firstDifference是通过以下方式从inputArray创建的:(inputArray的第二个元素) - (inputArray的第一个元素),依此类推.
所以给定集合的FD是(3,-2,3,2,-1,3,-1,-5).任务是找到给定集合的多个排列,其中第一个差异是FD的排列.在示例中,我们应该找到(1,4,2,5,7,6,9,8,3)的这种排列,即第一个差异是(3,-2,3,2,-1,3, - 的排列). 1,-5).
这是我的算法:
但是这个算法太慢了.你能帮助创建更快的算法吗?可能我做了一些可以消除的步骤?
我正在从套接字输入流中读取HTTP请求
StringBuilder request = new StringBuilder();
String inputLine;
while (!(inputLine = in.readLine()).equals("")) {
request.append(inputLine + "\r\n");
}
Run Code Online (Sandbox Code Playgroud)
它工作但是findbugs给出了以下错误:Dereference of the result of readLine() without nullcheck.请求以""不结束eof.那么如何在这里检查空值呢?
java ×2
algorithm ×1
css ×1
css-grid ×1
css3 ×1
findbugs ×1
grid-layout ×1
inputstream ×1
permutation ×1