zoukankan      html  css  js  c++  java
  • 返回值递归问题

    遇到此问题的时候,如果运行递归要返回值的话,一般可以这样写 return 后面接递归的函数。

    题目一:数字在排序数组中出现的次数

    class Solution {
    public:
        int GetNumberOfK(vector<int> data ,int k) {
            int number=0;
            if(data.size()!=0){
                int first=GetFirstk(data,k,0,data.size()-1);
                int last=GetLastk(data,k,0,data.size()-1);
                if(first>-1&&last>-1)number=last-first+1;
            }
             
            return number;
        }
         
        int GetFirstk(vector<int>&data,int k,int start,int end){
            if(start>end)return -1;
            int mid=(start+end)>>1;
            if(data[mid]==k){
                if((mid>0&&data[mid-1]!=k)||mid==0)return mid;
                else
                    return GetFirstk(data,k,start,mid-1);
            }
            else{
                 if(data[mid]>k)return GetFirstk(data,k,start,mid-1);
                 else
                    return GetFirstk(data,k,mid+1,end);
            }
             
        }
         
        int GetLastk(vector<int>&data,int k,int start,int end){
            if(start>end)return -1;
            int mid=(start+end)>>1;
            if(data[mid]==k){
                if((mid<data.size()&&data[mid+1]!=k)||(mid==data.size()-1))return mid;
                else
                    return GetLastk(data,k,mid+1,end);
            }
            else{
                 if(data[mid]<k)return GetLastk(data,k,mid+1,end);
                 else
                     return GetLastk(data,k,start,mid-1);
            }
             
        }
    };

    题目二:二叉树的深度

    class Solution {
    public:
        int TreeDepth(TreeNode* pRoot)
        {
            if(!pRoot)return 0;
            return max(TreeDepth(pRoot->left),TreeDepth(pRoot->right))+1;
        
        }
    };
  • 相关阅读:
    【MySQL笔记】字符串、时间日期转换
    【MySQL笔记】触发器,存储过程和函数
    【MySQL笔记】用户管理
    spray 处理 response 的通用函数
    akka pubsub example
    一个手写的 http client
    scala get ipv4 address
    akka cluster singleton
    akka cluster sharding
    akka cluster 初体验
  • 原文地址:https://www.cnblogs.com/inception6-lxc/p/9296529.html
Copyright © 2011-2022 走看看