目前我正在尝试将不真实的数据写入文件,
基本上我生成一个新的数据结构并将其写入文件,直到文件变为1gb大,这发生在6个文件中,每个1gb,结构很小.8个字节长,有两个2变量id和amount
当我生成我的数据时,将按照金额的顺序创建结构并将其写入文件.但我需要按ID排序的数据.
记得有6gb的数据,我怎么能用id值对这些结构进行排序然后写入文件?
或者我应该首先写入文件,然后对每个单独的文件进行排序,以及如何将所有这些数据合并到一个文件中?
我有点卡住了,因为我想把它放在一个数组中,但显然这个数据量太大了.
我需要一个很好的方法来排序很多数据?(6GB)
我有几个控制器,我希望每个ActionResult返回相同的viewdata.在这种情况下,我知道我将始终需要基本的产品和员工信息.
现在我一直在做这样的事情:
public ActionResult ProductBacklog(int id) {
PopulateGlobalData(id);
// do some other things
return View(StrongViewModel);
}
Run Code Online (Sandbox Code Playgroud)
其中PopulateGlobalData()定义为:
public void PopulateGlobalData(int id) {
ViewData["employeeName"] = employeeRepo.Find(Thread.CurrentPrincipal.Identity.Name).First().FullName;
ViewData["productName"] = productRepo.Find(id).First().Name;
}
Run Code Online (Sandbox Code Playgroud)
这只是伪代码,所以原谅任何明显的错误,有没有更好的方法来做到这一点?我想让我的控制器继承一个几乎与你在这里看到的相同的类,但我没有看到任何巨大的优势.感觉就像我正在做的事情是错误的和无法维持的,最好的方法是什么?
我编写了一个用于生成子集和的程序,该程序可能会在此问题中使用,该程序指出:
假设你有3个1美元硬币,2个2美元硬币,3个5美元硬币,1个10美元硬币,有4种方法从这些硬币中获得10美元.如果有n1 $ X1币,n2 $ X2币...... nm $ Xm币,我们有多少种方法可以从这些有限数量的硬币中获得$ X?
如果我们创建一组{X1,X1 ..... X1,X2,X2 .......... X2,...,...,.......... ..,Xm,Xm ... Xm},然后对它运行Subset求和,当然我们可以得到$ X的结果.但是我找不到使用集合{n1,n2,n3 ...... nm},{X1,X2,X3 ...... Xm}的方法.一位朋友告诉我,这是背包问题的变种,但我不确定,怎么样.
这是我写的部分代码:
ways[0]=1, mylim=0;
for(i=0;i<count;i++){
if(mylim+coins[i]<=LIMIT) mylim+=coins[i];
else mylim=LIMIT;
for(j=mylim; j>=coins[i];j--){
ways[j]=(ways[j]+ways[j-coins[i]])%MOD;
}
}
Run Code Online (Sandbox Code Playgroud)
如果你能够精心解释一下,那对我来说会很棒.
编辑:这个问题更适合计算机科学的堆栈交换,但由于这是我的一个老问题,我宁愿在这里编辑它.
这个问题可以通过包含排除原则来解决,当我们固定硬币值但每个硬币的数量随每个查询而变化时,它会派上用场.
假设,方法[v]是使用$ x1,$ x2,.. $ xm制作$ v的方法,每种方法根据需要多次使用.现在,如果我们只使用N1的数字$ X1,我们必须减去至少使用(配置N1 + 1)号的$ X1(这实际上是方法 [ N - (N1 + 1)×1 ]).此外,如果我们只使用N2的数字 …
c algorithm knapsack-problem dynamic-programming coin-change
我试图在bash文件中的几行上传播一个sed命令.我有多种模式可以检查,我希望通过换行来分离一些模式.这是我当前的脚本不起作用,将所有内容都放在一行上但是我希望只是稍微清理一下并将其拆分.
#!/bin/sh -f
#files=$(ls -1 | egrep '.avi|.mkv');
#echo $files
for f in *.mkv *.avi;
do
renF=`echo $f | tr '.' ' ' | sed -e 's/ \([^ ]*\)$/.\1/; s/\ \[sharethefiles\ com\]//i' \
-e 's/\ x264\-Ctu//i; s/\ x264\-Bia//i; s/\ x264\-Fov//i' \
-e 's/\ Xvid\-Lol//i; s/\ Xvid\-Xor//i; s/\ Xvid\-Notv//i; s/\ Xvid\-Fqm//i; s/\ Xvid\-p0w4//i; Xvid\-BIA//i; s/\ Xvid\-Chgrp//i; s/\ Xvid\-Fov//i' \
-e 's/\ PDTV\-Fov//i; s/\ PDTV\-River//i; s/\ PDTV\-Sfm' \
-e 's/\ Dts\-Chd//i; s/\ WEB\-DL//i; s/\ H264\-SURFER//i' \
-e 's/\ Dsr//; s/\ WS//i; s/\ …Run Code Online (Sandbox Code Playgroud) 你能告诉我为什么以下不能在postgres sql中工作吗?:
See updated code below
Run Code Online (Sandbox Code Playgroud)
更新:
我希望查询返回"0.30"作为浮点数.这个构造仅用于测试目的,我有一些复杂的查询依赖于这个条件结构... BUt我不知道如何解决它..
结果是:
ERROR: syntax error at or near "1"
LINE 4: if 1=1 then
Run Code Online (Sandbox Code Playgroud)
更新:
这个结构出现在一个函数中......所以我想做以下事情:
CREATE FUNCTION f_test(myvalue integer) RETURNS float AS $$
BEGIN
select (
case (select '1')
when '1' then
if 1=1 then
0.30::float
else
0.50::float
end
else
1.00::float
end
);
END;
$$ LANGUAGE plpgsql;
select f_test(1) as test;
Run Code Online (Sandbox Code Playgroud)
错误信息见上文.
<div style="float: left;">Left</div>
<div style="float: right;">Right</div>
<div style="clear: both; margin-top: 200px;">Main Data</div>Run Code Online (Sandbox Code Playgroud)
为什么margin:top"主要数据"在上面的代码中不起作用?
我正在使用http://www.albahari.com/nutshell/predicatebuilder.aspx中的 Albaharis PredicateBuilder来过滤 Linq-to-SQL 应用程序中的结果。这一直很有效。
我现在想做的是重用现有的过滤谓词表达式来过滤将现有过滤对象作为属性的对象。
例如,我有 2 个课程,Order并且Customer. 我已经有一个返回 a 的方法Expression<Func<Customer, bool>>,它是使用上面提到的谓词构建器构建的。我现在想在我的Order过滤方法中重用它,它将Expression<Func<Customer, bool>>通过某种方式将Order.Customer属性(表达式?)传递到我的Customer过滤方法中返回 a 。
我有这样的东西(远未完成,但我希望你明白):
public class CustomerSearchCriteria
{
public Expression<Func<Customer, bool>> FilterPredicate()
{
// Start with predicate to include everything
var result = PredicateBuilder.True<Customer>();
// Build predicate from criteria
if (!String.IsNullOrEmpty(this.Name))
{
result = result.And(c => SqlMethods.Like(c.Name, this.Name));
}
// etc. etc. etc
}
public class OrderSearchCriteria
{
public Expression<Func<Order, bool>> FilterPredicate() …Run Code Online (Sandbox Code Playgroud) 在我的代码中,每次我需要为我的类创建一个新的对象属性时,我通常会将其名称复制/粘贴到4个不同的位置!
NSObject * myObject;)@property()条线@synthesize()实施中的一行dealloc:(当然只针对对象)我这样做是因为它有效,不是因为我完全理解发生了什么.我知道头文件中的声明允许其他类查看其属性,属性说明符确定如何构造其getter/setter方法.合成行实际上构建了那些getter/setter方法.我也知道原始类型应该使用(nonatomic,assign)而不是(nonatomic,retain),但我不知道什么时候我应该省略非原子.
我该怎么做才能避免代码中的冗余.如果我在课堂上更改或添加变量,我必须检查4个不同的地方,并且它变得非常快.有没有任何关键的笔画可以让这个过程更快?我可以简化或组合代码行以获得相同的结果吗?
所以,这就是问题所在.iPhone非常棒,但带宽和延迟是具有服务器端要求的应用程序的严重问题.我最初解决这个问题的计划是对数据位进行多次请求(双关语意外),这就是如何处理大量传入//传出数据的问题.出于很多原因这是一个坏主意,对我来说最明显的是我的糟糕数据库(MySQL)无法很好地处理这个问题.根据我的理解,最好一次性请求大块,特别是如果我要求所有这些都无论如何.
问题是现在我再次等待大量数据通过.我想知道是否有办法基本上向服务器发送一堆ID来从数据库获取,然后该SINGLE请求然后发送许多小响应,每个响应包含有关单个数据库条目的所有信息.订单是无关紧要的,理想情况下,我可以向服务器发送另一个请求,告诉它停止发送给我的东西,因为我有我需要的东西.
我意识到这可能不是一件简单的事情,如果你(真棒)家伙可以指出我正确的方向,这也是不可思议的.
目前的系统是iPhone(Cocoa // Objective-C) - > PHP - > MySQL
非常感谢提前.
我有一些代码连接到URL以下载文件,然后对其执行一些处理.但是,有时我收到错误java.net.SocketException: Connection reset.
我想在收到此错误时重试下载该文件,在放弃之前最多说3次.我想知道什么是最好的结构方式.
以下是否正常.将try-catch块放在while循环内是否可以接受,还是有更好的方法?
非常感谢所有帮助!
while(!connected && retries > 0) {
retries--;
URL downloadUrl;
URLConnection conn;
try {
downloadUrl = new URL(url);
conn = downloadUrl.openConnection();
conn.connect();
connected = true;
// Perform processing on downloaded file here
} catch (IOException e) {
Logger.batchLog(e);
}
}
Run Code Online (Sandbox Code Playgroud) c ×2
iphone ×2
objective-c ×2
algorithm ×1
asp.net ×1
asp.net-mvc ×1
bash ×1
c# ×1
case ×1
coin-change ×1
connection ×1
css ×1
css-float ×1
httprequest ×1
httpresponse ×1
if-statement ×1
java ×1
lambda ×1
linq-to-sql ×1
networking ×1
postgresql ×1
properties ×1
quicksort ×1
sed ×1
sorting ×1
sql ×1