作者tata111 (aa)
看板CSSE
标题[问题] 数学式读取与分析
时间Tue Feb 17 20:03:09 2009
※ [本文转录自 C_and_CPP 看板]
作者: tata111 (aa) 看板: C_and_CPP
标题: [问题] 数学式读取与分析
时间: Mon Feb 16 23:10:24 2009
我有一堆档案如下面的简图
每档案大小约0.5M
档案里面存的都是参数或是数学式(加减乘除)
需要做下面列出两种分析
目前正在想要怎麽写
可以确定的是用平常的方式硬做速度应该会超慢
有什麽方式可以快速的处理类似的东西
有没有人有好的建议呢?
1.找出档案间的关系
|--|--f1.txt
| |--f2.txt
data.txt--|
| |--f3.txt
|--|--f4.txt
|--f5.txt--f6.txt
2.求data.txt中任意参数的值,如p1=?
------------------------------------------------
| f1.txt | f2.txt |
------------------------------------------------
| a=1 | a=2 |
| b=5 | b=10 |
| c=(3+b)*a | c=(4+b)*a*b |
|
t=c |
t=c |
|
v=a |
v=a |
-------------------------------------------------------------------------
| f3.txt | f4.txt | f5.txt |
-------------------------------------------------------------------------
| aa=4 | aa=12 | aa=4 |
| bb=9 | bb=27 | bb=9 |
| cc=(1+aa)*nn/aa | cc=((aa-1)/bb+7)/aa | cc=(1+aa)*nn/aa |
|
tg=aa+cc |
tg=aa+cc |
tg=aa+cc |
|
vg=bb |
vg=bb |
vg=bb |
| | | r1=
s1 |
--------------------------------------------------------------------------
| f6.txt |
--------------------------
|
s1=10 |
--------------------------
-------------------------
| data.txt |
-------------------------
| p1=
t+
tg |
| p2=
v/
vg |
-------------------------
现在的想法是分析1会用到字串比对
找到一个介绍string matching的网页
由於没有接触过不确定是不是真的有帮助
也不知道该怎麽判断那种适合?
http://www-igm.univ-mlv.fr/~lecroq/string/
分析二的话不会一开始就把所有的参数值都算好
要用到时再算
可是这样的话要算的时候就要去找参数来代入
所以look up应该很重要
用Hash table有帮助吗?
由於完全没有处理过量这麽大的字串
所以不知如何着手
上面的想法也是晚上在google找的还没有细看
希望有高手可以帮我缩小范围给我个方向
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.136.220.110
1F:→ karcher:试试看储存为ini档以及try GetPrivateProfileString 02/16 23:16
2F:推 chrisdar:map<string,string> 02/16 23:58
3F:→ tata111:如p1=(a*9+6)*b的话以p1当index,(a*9+6)*b为内容吗? 02/17 19:53
4F:→ tata111:如果要用map的话 02/17 19:53
5F:→ tata111:k大要是在linux上呢? 02/17 19:54
※ tata111:转录至看板 PLT 02/17 20:01
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.136.220.110
6F:推 ykjiang:资料量不大,可以直接在 RAM 中处理 02/17 21:37