递归算法的数据结构和算法 C++和PHP达到
(相同类型的问题,子问题到最小问题有已知条件,然后来求解,然后得到结果逐级返回。
事实上也是一种循环。
)
#include<iostream>
int factorial(int n);
int main()
{
using namespace std;
int n;
cout << "请输入一个数字:";
cin >> n;
cout << n << "的阶乘为: " << factorial(n) <<endl;
return 0;
}
int factorial(int n)
{
if (n == 1)
return 1;
return n*factorial(n-1);
}
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZ3V1Z2xlMjAxMA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
#include<iostream>
#include<cstring>
void feelTheBase(char *s, int n, int sys);
int main()
{
using namespace std;
char s[60];
int n,sys;
cout << "请输入一个整数:";
cin >> n;
cout << "请输入要转换的进制类型(2,8,16):";
cin >> sys;
feelTheBase(s, n, sys);
cout << n << "转换成" << sys << "进制结果为: " << s <<endl;
return 0;
}
void feelTheBase(char *s, int n, int sys)
{
char bit[] = {"0123456789ABCDEF"};
int len;
if (n == 0)
{
strcpy(s, "");
return;
}
feelTheBase(s, n/sys, sys);
len = strlen(s);
s[len] = bit[n%sys];
s[len+1] = '\0';
}
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZ3V1Z2xlMjAxMA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
<?php
function rec($dir, $lev=0){
$dh = opendir($dir);
while (($file = readdir($dh)) != false) {
if ($file == '.' || $file == '..') {
continue;
}
if (is_dir($dir.'/'.$file)){
$arr = explode("/",$dir.'/'.$file);
$lev = count($arr)-3;
echo str_pad('',$lev, "--")."文件夹".$file."<br/>";
rec($dir.'/'.$file, $lev+1);
}else {
echo str_pad('',$lev, "--").$file."<br/>";
}
} closedir($dh);
}
$dir = "./";
rec($dir);
?>
版权声明:本文博主原创文章,博客,未经同意不得转载。
递归算法的数据结构和算法 C++和PHP达到的更多相关文章
- 数据结构与算法 Big O 备忘录与现实
不论今天的计算机技术变化,新技术的出现,所有都是来自数据结构与算法基础.我们需要温故而知新. 算法.架构.策略.机器学习之间的关系.在过往和技术人员交流时,很多人对算法和架构之间的关系感 ...
- 数据结构与算法系列研究七——图、prim算法、dijkstra算法
图.prim算法.dijkstra算法 1. 图的定义 图(Graph)可以简单表示为G=<V, E>,其中V称为顶点(vertex)集合,E称为边(edge)集合.图论中的图(graph ...
- Java数据结构和算法 - 二叉树
前言 数据结构可划分为线性结构.树型结构和图型结构三大类.前面几篇讨论了数组.栈和队列.链表都是线性结构.树型结构中每个结点只允许有一个直接前驱结点,但允许有一个以上直接后驱结点.树型结构有树和二叉树 ...
- Java数据结构和算法 - 递归
三角数字 Q: 什么是三角数字? A: 据说一群在毕达哥拉斯领导下工作的古希腊的数学家,发现了在数学序列1,3,6,10,15,21,……中有一种奇特的联系.这个数列中的第N项是由第N-1项加N得到的 ...
- Python3-Cookbook总结 - 第一章:数据结构和算法
第一章:数据结构和算法 Python 提供了大量的内置数据结构,包括列表,集合以及字典.大多数情况下使用这些数据结构是很简单的. 但是,我们也会经常碰到到诸如查询,排序和过滤等等这些普遍存在的问题. ...
- Java数据结构和算法(四)赫夫曼树
Java数据结构和算法(四)赫夫曼树 数据结构与算法目录(https://www.cnblogs.com/binarylei/p/10115867.html) 赫夫曼树又称为最优二叉树,赫夫曼树的一个 ...
- Python(一)数据结构和算法的20个练习题问答
数据结构和算法 Python 提供了大量的内置数据结构,包括列表,集合以及字典.大多数情况下使用这些数据结构是很简单的. 但是,我们也会经常碰到到诸如查询,排序和过滤等等这些普遍存在的问题. 因此,这 ...
- 为什么我要放弃javaScript数据结构与算法(第三章)—— 栈
有两种结构类似于数组,但在添加和删除元素时更加可控,它们就是栈和队列. 第三章 栈 栈数据结构 栈是一种遵循后进先出(LIFO)原则的有序集合.新添加的或待删除的元素都保存在栈的同一端,称为栈顶,另一 ...
- Pascal数据结构与算法
第一章 数据结构与算法的引入 1.1 数据结构的基本概念 一. 学习数据结构的意义 程序设计 = 数据结构 + 算法 目前,80%的待处理的数据具有“算法简单”(四则运算.检索.排序等),“对象复杂” ...
随机推荐
- (原创)(C#随笔)IEnumerable< ICollection < IList区别
public interface IEnumerable { IEnumerator GetEnumerator(); } 再看ICollection<T> public interfac ...
- 键盘游戏之canvas--用OO方式写
虽然写的不是很好,但 解释权以及版权仍然归13东倍所有! <!DOCTYPE HTML> <html> <head> <title>canvas-00 ...
- 大话项目管理工具之Confluence篇
前言 前面的两篇文章,讲的都是代码层次上的项目管理工具.这篇文章打算介绍一下关于知识管理的工具,当然,它也属于项目管理中的一部分.说到知识管理,你想到了什么呢?织网?找节点?不错,这是个人的知识管理. ...
- 如何得到动态链接库的输出函数tdump命令(225篇博文)
有的时候,我们需要查看一个动态链接库的输出函数列表,有很多软件可以满足此要求,比如说 exeScope.不过,去下载一个软件总归是很麻烦,Delphi 本身就自带一个类似的工具,那就是 tdump.e ...
- Delphi 中TWebBrowser的扩展控件TExWebBrowser
主要扩展了3D界面.右键菜单.是否显示图片.是否支持JAVA等功能. 代码如下: unit ExtWebBrowser; interface uses Windows, SysUtils, Class ...
- Qt中无处不在的d指针为何方神圣
在研究QCoreApplication类的代码时,无意间弄明白了“d_func()”和“d指针”的来源: class Q_CORE_EXPORT QCoreApplication#ifndef QT_ ...
- discuz清空session,导致session保存机制失败,session无法更新与解决
<?php function userErrorHandler() { $e = func_get_args(); echo '<pre style="color:red;&qu ...
- Android 的独特shell命令
Android本来就是一个linux操作系统,所以大部分都是linux的命令,如mkdir,ls,netstat,mount,ps 等,这里就不具体介绍了, 主要介绍几个Android特有的. get ...
- Cocos2dx 3.x创建Layer的步骤
创建 1.新建类文件.注意文件夹为Classes下.否则文件不能正常找到. 2.改动预编译头.如用VS,默觉得#pragma once,为了兼容,改为#ifndef | #define | #endi ...
- APPCAN学习笔记001---app高速开发AppCan.cn平台概述
1.APPCAN学习笔记---app高速开发AppCan.cn平台概述 1. 平台概述 技术qq交流群:JavaDream:251572072 AppCan.cn开发平台是基于HTML5技术的跨平台移 ...