论坛有内存泄漏,请管理员关注一下
感觉浏览一早上帖子,机器就会变慢,内存占用比刚开始上论坛高了300MB,我试了一下,每看一个帖子再回到主界面
内存会多1MB左右。
虽然关掉浏览器就可以解决,不过也算个小bug吧
----------------解决方案--------------------------------------------------------
这个是IE浏览器的通病
----------------解决方案--------------------------------------------------------
哦,对,有可能和论坛没有关系
是浏览器没有释放缓存
----------------解决方案--------------------------------------------------------
没有啊……开了N个页面了也只有四十多兆……顺便说说,我用IE7……
----------------解决方案--------------------------------------------------------
使用时间长才显现的
特别是打开一些带flash或者Java的,特别是后者,很明显的
----------------解决方案--------------------------------------------------------
飞燕……你语法高亮外面那个框是怎么做的啊……
MS我在追着问呢……
----------------解决方案--------------------------------------------------------
回ls:
用[code][/code]
----------------解决方案--------------------------------------------------------
例如
程序代码:
#include<stdio.h>
int main(void)
{
return 0;
}
----------------解决方案--------------------------------------------------------
程序代码:
[quote]
这个没标题
[/quote]
疯了
[[it] 本帖最后由 yxwsbobo 于 2008-4-20 16:07 编辑 [/it]]
----------------解决方案--------------------------------------------------------
#include <stdio.h>
[bo]typedef[/bo] [bo]struct[/bo] _node{
[bo]int[/bo] value;
[bo]struct[/bo] _node* pNext;
}node;
[bo]const[/bo] [bo]int[/bo] MAX_EDGE = 20001;
[bo]const[/bo] [bo]int[/bo] MAX_CITY = 10001;
node nd_pool[MAX_EDGE*2];
[bo]int[/bo] nPoolIndex;
[bo]int[/bo] main()
{
[bo]int[/bo] n,k;
[bo]int[/bo] a,b;
[bo]int[/bo] p,q;
[bo]while[/bo](scanf("%d%d", &n, &k), n)
{
[bo]int[/bo] nCount[MAX_CITY] = {0};
[bo]int[/bo] nUse[MAX_CITY] = {0};
node nd[MAX_CITY] = {0};
node* ndQueue[MAX_EDGE] = {0};
[bo]int[/bo] QueueBeg=0, QueueEnd=0;
nPoolIndex = 0;
[bo]for[/bo]([bo]int[/bo] n1=0; n1<k; ++n1)
{
node *pt;
scanf("%d%d", &a, &b);
{
pt = nd[a].pNext;
nd[a].pNext=nd_pool + nPoolIndex++;
nd[a].pNext->value=b;
nd[a].pNext->pNext=pt;
}
{
pt = nd[b].pNext;
nd[b].pNext=nd_pool + nPoolIndex++;
nd[b].pNext->value=a;
nd[b].pNext->pNext=pt;
}
}
scanf("%d%d", &p, &q);
nUse[p] = 1;
ndQueue[QueueBeg++] = &nd[p];
nCount[p]=1;
[bo]int[/bo] nCur = 1;
[bo]for[/bo](;QueueEnd<QueueBeg && QueueBeg<=k;) //BFS队列
{
[bo]for[/bo]([bo]int[/bo] nB=QueueBeg; QueueEnd<nB; ++QueueEnd) //搜索当前层
{
[bo]for[/bo](node* pn=ndQueue[QueueEnd]->pNext; pn; pn = pn->pNext) //搜索所有子结点
{ [bo]if[/bo](nUse[pn->value]==0)
{
nUse[pn->value] = 1;
ndQueue[QueueBeg] = &nd[pn->value]; //加到队列尾
[bo]if[/bo](nCount[pn->value]==0)
{
nCount[pn->value] = nCur+1;// nCount[nCur] + 1;
}
++QueueBeg;
}
}
}
nCur++;// = ndQueue[QueueEnd]->pNext->value;
}
[bo]if[/bo](nCount[q]==0)
puts("No solution");
[bo]else[/bo] [bo]if[/bo](nCount[q]==1)
puts("0");
[bo]else[/bo]
printf("%d\n", nCount[q]-2);
}
[bo]return[/bo] 0;
}
[bo]typedef[/bo] [bo]struct[/bo] _node{
[bo]int[/bo] value;
[bo]struct[/bo] _node* pNext;
}node;
[bo]const[/bo] [bo]int[/bo] MAX_EDGE = 20001;
[bo]const[/bo] [bo]int[/bo] MAX_CITY = 10001;
node nd_pool[MAX_EDGE*2];
[bo]int[/bo] nPoolIndex;
[bo]int[/bo] main()
{
[bo]int[/bo] n,k;
[bo]int[/bo] a,b;
[bo]int[/bo] p,q;
[bo]while[/bo](scanf("%d%d", &n, &k), n)
{
[bo]int[/bo] nCount[MAX_CITY] = {0};
[bo]int[/bo] nUse[MAX_CITY] = {0};
node nd[MAX_CITY] = {0};
node* ndQueue[MAX_EDGE] = {0};
[bo]int[/bo] QueueBeg=0, QueueEnd=0;
nPoolIndex = 0;
[bo]for[/bo]([bo]int[/bo] n1=0; n1<k; ++n1)
{
node *pt;
scanf("%d%d", &a, &b);
{
pt = nd[a].pNext;
nd[a].pNext=nd_pool + nPoolIndex++;
nd[a].pNext->value=b;
nd[a].pNext->pNext=pt;
}
{
pt = nd[b].pNext;
nd[b].pNext=nd_pool + nPoolIndex++;
nd[b].pNext->value=a;
nd[b].pNext->pNext=pt;
}
}
scanf("%d%d", &p, &q);
nUse[p] = 1;
ndQueue[QueueBeg++] = &nd[p];
nCount[p]=1;
[bo]int[/bo] nCur = 1;
[bo]for[/bo](;QueueEnd<QueueBeg && QueueBeg<=k;) //BFS队列
{
[bo]for[/bo]([bo]int[/bo] nB=QueueBeg; QueueEnd<nB; ++QueueEnd) //搜索当前层
{
[bo]for[/bo](node* pn=ndQueue[QueueEnd]->pNext; pn; pn = pn->pNext) //搜索所有子结点
{ [bo]if[/bo](nUse[pn->value]==0)
{
nUse[pn->value] = 1;
ndQueue[QueueBeg] = &nd[pn->value]; //加到队列尾
[bo]if[/bo](nCount[pn->value]==0)
{
nCount[pn->value] = nCur+1;// nCount[nCur] + 1;
}
++QueueBeg;
}
}
}
nCur++;// = ndQueue[QueueEnd]->pNext->value;
}
[bo]if[/bo](nCount[q]==0)
puts("No solution");
[bo]else[/bo] [bo]if[/bo](nCount[q]==1)
puts("0");
[bo]else[/bo]
printf("%d\n", nCount[q]-2);
}
[bo]return[/bo] 0;
}
----------------解决方案--------------------------------------------------------