• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
日常任务
天天挖坑
博客园 首页 新随笔 联系 订阅 订阅 管理

2013年3月10日

尾递归
摘要: 普通递归中进行了大量重复计算,同时又容易栈溢出。与普通递归相比,由于尾递归的调用处于方法的最后,因此方法之前所积累下的各种状态对于递归调用结果已经没有任何意义,因此完全可以把本次方法中留在堆栈中的数据完全清除,把空间让给最后的递归调用。这样的优化便使得递归不会在调用堆栈上产生堆积,意味着即时是“无限”递归也不会让堆栈溢出。这便是尾递归的优势。下面来看一下普通递归与尾递归的比较:#pragma once#include <iostream>#include <ctime>#include <windows.h>using namespace std;int f 阅读全文
posted @ 2013-03-10 15:03 fripSide 阅读(349) 评论(0) 推荐(0)
 
虚函数初探
摘要: 今天读了coolshell博主几年前的旧文,C++虚函数表解析,代码如下:#pragma once#include <iostream>using namespace std;class Base{public: virtual void f(){ cout<<"Base::f()"<<endl;} virtual void g(){ cout<<"Base::g()"<<endl;} virtual void h(){ cout<<"Base::h()"< 阅读全文
posted @ 2013-03-10 14:55 fripSide 阅读(228) 评论(0) 推荐(0)
 
 

公告


博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3