V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  me15000  ›  全部回复第 4 页 / 共 8 页
回复总数  149
1  2  3  4  5  6  7  8  
2017-10-24 17:12:14 +08:00
回复了 me15000 创建的主题 分享发现 有人用 goto 语句么?我是用它代替递归
@fqwerl
@hjc4869

╮(╯▽╰)╭, 不要遵守教条,教条说是面条,意思是大量使用 goto 的情况下,然后就有人根据教条就 不敢用 goto 了
2017-10-24 17:09:33 +08:00
回复了 me15000 创建的主题 分享发现 有人用 goto 语句么?我是用它代替递归
@pcatzj 汗,不觉得我上面贴的代码 很方便么,goto 可以再一个 代码块里面,还用传参么?
goto 之前先给变量赋值,赋值之后 goto 过去,变量存储的值还是在的

伪代码:

var 参数 a=1,参数 b=2;

loop:

参数 a++;
参数 b--;

goto loop;
2017-10-24 16:53:25 +08:00
回复了 me15000 创建的主题 分享发现 有人用 goto 语句么?我是用它代替递归
@zhujinliang 没 goto 清晰吧,而且 while(true){} for 有作用域范围,不好跳出去,要跳出去还要再写一些逻辑
goto 倒是很省事,定义好 label,就可以跳到那里
2017-10-24 16:51:33 +08:00
回复了 me15000 创建的主题 分享发现 有人用 goto 语句么?我是用它代替递归
@takanasi
没懂你意思,我没说递归不能传参数
我只想说用 goto 可以代替递归 很好用,递归有限制而且消耗资源
2017-10-24 16:45:17 +08:00
回复了 me15000 创建的主题 分享发现 有人用 goto 语句么?我是用它代替递归
@b821025551b 我一般仅用它代替递归,逻辑也很清晰,因为递归好像在 .NET 中有最大嵌套次数限制,而且递归比较消耗资源,所以用 goto 发现很好
2017-10-24 16:42:04 +08:00
回复了 me15000 创建的主题 分享发现 有人用 goto 语句么?我是用它代替递归
@zhujinliang

```



//一个采集程序 goto 代替递归
public void Run(string listurl)
{
using (var wc = new WebClient())
{
loop:

string html = Encoding.GetEncoding("utf-8").GetString(wc.DownloadData(listurl));
var doc = new HtmlDocument();
doc.LoadHtml(html);
var nodes = doc.DocumentNode.SelectNodes("//ul[@id=\"data_list\"]/li/div/a");
for (int i = 0; i < nodes.Count; i++)
{
var node = nodes[i];
string link = "http://www..cn" + node.Attributes["href"].Value;
string title = node.SelectSingleNode("span[@class=\"sTit\"]").InnerText;
Save(title, link);
}
var nextnode = doc.DocumentNode.SelectSingleNode("//div[@class='page mb clearfixs']/em/following-sibling::a");
if (nextnode != null)
{
listurl = "http://www..cn" + nextnode.Attributes["href"].Value;
goto loop;
}
}
}

//如果使用递归
public void Run(string listurl)
{
using (var wc = new WebClient())
{

string html = Encoding.GetEncoding("utf-8").GetString(wc.DownloadData(listurl));
var doc = new HtmlDocument();
doc.LoadHtml(html);
var nodes = doc.DocumentNode.SelectNodes("//ul[@id=\"data_list\"]/li/div/a");
for (int i = 0; i < nodes.Count; i++)
{
var node = nodes[i];
string link = "http://www..cn" + node.Attributes["href"].Value;
string title = node.SelectSingleNode("span[@class=\"sTit\"]").InnerText;
Save(title, link);
}
var nextnode = doc.DocumentNode.SelectSingleNode("//div[@class='page mb clearfixs']/em/following-sibling::a");
if (nextnode != null)
{
var nexturl = "http://www..cn" + nextnode.Attributes["href"].Value;

Run(nexturl);
}
}
}
```
2017-10-22 22:29:18 +08:00
回复了 gdtv 创建的主题 问与答 深夜睡不着,买房选错地段,后悔
选 2,国道很吵,以前租过房子,深知睡不着觉比什么都烦
2017-10-20 17:47:05 +08:00
回复了 wode22 创建的主题 问与答 现在快手引流的技术覆盖这么巨大的机会
刚刚出于好奇搜了一番
但是我想如果真的能引流,就自己早发财了
2017-10-20 15:52:37 +08:00
回复了 shallyy 创建的主题 问与答 除了特斯拉 还有哪些有格调的电动车
2017-10-20 15:45:20 +08:00
回复了 niselover 创建的主题 程序员 双十一要来了,你们准备买点啥?
突发奇想 注册一个域名
maibk.com (买爆款)
2017-10-17 17:54:37 +08:00
回复了 Livid 创建的主题 塞尔达传说 Zelda 与操作系统 UI 设计
看起来还是挺好看,图标做得太精致
2017-10-17 11:48:11 +08:00
回复了 iawes 创建的主题 汽车 新手司机,求推荐车
@iawes hard 模式,也不大吧,4 米 6 和轿车一样的长度,宽度可能还小一点
2017-10-17 11:15:24 +08:00
回复了 iawes 创建的主题 汽车 新手司机,求推荐车
BYD 宋 max
2017-10-16 14:35:17 +08:00
回复了 springsummer 创建的主题 问与答 程序员职业规划 && 普通人生活状态
个人建议:多看看招聘信息要求,
假设你现在月薪 2 万,你期待的目标是月薪 3 万,
看看 3 万月薪的职位的要求都有哪些,然后去学习就好了,就这么 easy
还有就是行业前景和职业方向 要多多了解一点
某行业越来越不行了,如果还一直在那个行业里,可能对自己不利
要寻找有前途的行业
2017-10-16 10:28:41 +08:00
回复了 boyhailong 创建的主题 iPhone 6p 升级 11.03 后卡出翔
就是让人买新的 iPhone,虽然你不愿意,还禁止降级,这种做法太强人所难,不过大多人都习惯了
2017-10-16 09:59:23 +08:00
回复了 boyhailong 创建的主题 iPhone 6p 升级 11.03 后卡出翔
一样,iPhone 的体验越来越糟,终究会被大众抛弃
打拼音累死
2017-10-16 09:47:53 +08:00
回复了 fallenff 创建的主题 职场话题 公司开发团队用盗版软件
@fallenff 666666 服
@Felldeadbird 我笑了
1  2  3  4  5  6  7  8  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3061 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 26ms · UTC 00:43 · PVG 08:43 · LAX 16:43 · JFK 19:43
Developed with CodeLauncher
♥ Do have faith in what you're doing.