如何循环获取我的朋友圈数量和显示!急

yanminqiang 2004-11-16 11:15:03
我个人正在做一个朋友圈,要显示和统计我的朋友圈的第一层,第二层,第三层,第四层就够了

表:memberid,friendid

条件:如果第二层的朋友已经在第一层显示了就要过滤掉

我应该怎么做呢,请高手赐教!

...全文
199 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
amendajing 2004-11-16
  • 打赏
  • 举报
回复
mark
yanminqiang 2004-11-16
  • 打赏
  • 举报
回复
那请问具体应该怎么做呢,实际上就一张表,friendlist两个字段memberid,friendid
飞一龙 2004-11-16
  • 打赏
  • 举报
回复
帮你up一下
morefish 2004-11-16
  • 打赏
  • 举报
回复
从第一层开始,用数组 A把朋友都即下来,第一层没有什么,
到第二层就判断,如果是数组A中没有,就加到数组A中,如果已经在A中了就给他过滤掉。
呵呵出了第一层的每一个朋友都得和数组A判断。
hgamezoom 2004-11-16
  • 打赏
  • 举报
回复
用个递归就可以实现了,你要具体代码的话,把你具体的数据表结构和逻辑意义发出来,帮你写写看。
yanminqiang 2004-11-16
  • 打赏
  • 举报
回复
比如你在交友圈交了10朋友,这10个朋友肯定也有他的朋友,他的朋友有可能已经在我的第一层朋友了,这时应该把他过滤掉
sweet12345 2004-11-16
  • 打赏
  • 举报
回复
不知道你的层是一个什么概念呢?可否说的清楚一点?比如怎么分层?而且我觉得如果你有层的概念的话,最好再数据表里面有体现,这样做起来更容易一些。
46539492 2004-11-16
  • 打赏
  • 举报
回复
没试过,帮你up一下!
morefish 2004-11-16
  • 打赏
  • 举报
回复
这个要写出具体的代码也让我们很难,我们也不知道是哪个表,哪个字段代表什么,实现的方法有很多,前面已经说了很多了,最终还得你自己写啊。
simon8181 2004-11-16
  • 打赏
  • 举报
回复
我觉得还是用递归比较简单。
Dim cp As Short
Dim j As Short
cp = CNode.Nodes.Count
If cp = 0 Then
叶子节点的操作代码
Exit Sub
Else
For j = 0 To cp - 1
Call Cpoint(CNode.Nodes(j))
Next
End If
yanminqiang 2004-11-16
  • 打赏
  • 举报
回复
已经限制了只循环四层朋友
morefish 2004-11-16
  • 打赏
  • 举报
回复
这个问题很不清楚,没有层的概念那么memberid,friendid是什么关系,是不是相同的数据,即都是人员编号,呵呵这样很容易数据就变成死循环。比如说A的朋友是B ,B的朋友是C,C的朋友有有A,呵呵这样用递规,就没个头了啊。要考虑你现有的数据结构,采取最简单的方法。
yanminqiang 2004-11-16
  • 打赏
  • 举报
回复
我数据库中没有设置层次的字段,是用memberid,friendid来递归循环的,请问是否合理呢
yanminqiang 2004-11-16
  • 打赏
  • 举报
回复
如果我用javascript应该怎么实现呢
yichuan1982 2004-11-16
  • 打赏
  • 举报
回复
UP
yichuan1982 2004-11-16
  • 打赏
  • 举报
回复
只能用循环,不过太耗费资源了
morefish 2004-11-16
  • 打赏
  • 举报
回复
那就用循环了
ArrayList friendList = new ArrayList();
for(int i =1; i<= 4; i++)
{
DataSet pp = new DataSet();
string pp = "select * from friendList where 层数= i";
'数据连接****
***.Fill(pp);
if(i ==1)
{
foreach(DataRow row in pp.Tables[0].Rows)
{
friendList.Add( row["friendid"].ToString());
}
}
else
{
foreach(DataRow row in pp.Tables[0].Rows)
{
if(friendList.IndexOf(row["friendid"].ToString()) != -1)
{
friendList.Add(row["friendid"].ToString());
}
else
{
pp.Tables[0].Rows.Remove(row);
}
}
pp.Tables[0].AcceptChanges();
}
}

具体的操作你就看着办吧。我只是简单的实现你想要的功能。

62,025

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧