iOS 面试常见算法

发布时间:2019-08-09  栏目:LINUX  评论:0 Comments

iOS面试中常见的算法标题,iOS面试常见算法

一、前言

  这里是在iOS求职业中学友好境遇的算法题,希望对大家全体帮助。不定时更新。借使大家想在线运维代码调节和测量试验,能够将代码拷贝到这里。然后进行调节和测量检验。下边便是大规模的算法标题。

二、正文

1、就n的阶乘。

 思路:那中间用递归完结

#include <stdio.h>

int getNJ(int n) {
    if (n==1 || n==0) {
        return 1;
    }
    return n*getNJ(n-1);
}
int main() { 

   printf("%d",getNJ(10));
    return 0;
}

运维结果如下:

3628800

 

2、判别二个字符串是或不是是ip。

 思路:先将字符串分割到四个数组里面(多个数字数组,叁个字符数组),然后决断数字数组内容是还是不是满意ip条件,字符数组里面是否是”.”。那当中首要用了sscanf函数。代码如下:

#include <stdio.h>

int checkIP(const char *p) {
    int n[4];
    char c[4];
    if (sscanf(p,"%d%c%d%c%d%c%d%c",&n[0],&c[0],&n[1],&c[1],&n[2],&c[2],&n[3],&c[3])==7) {
        int i;
        for (i=0;i<3;i++) {
            if(c[i]!='.') {
                return 0;
            }    
        }
        for (i=0;i<4;i++) {
            if (n[i]>255||n[i]<0) {
                return 0;
            }
        }
        return 1;

    }else {
        return 0;
    }
}

int main() { 
    const char *x[] = 
    {
        "132.168.1.1",
        "10.0.0.1.",
        "127.256.0.1",
        "iudfdsfdasfdaf",
        "172.16,2.1"
    };
    const char *m[] = 
    {
        "不是合法的IP地址",
         "是合法的IP地址"
    };
    int i=0;
    while(x[i]!=0) {
        printf("%s %s\n",x[i],m[checkIP(x[i])]);
        i++;
    }
    return 0;
    return 0;
}

运营结果如下:

132.168.1.1 是合法的IP地址
10.0.0.1. 不是合法的IP地址
127.256.0.1 不是合法的IP地址
iudfdsfdasfdaf 不是合法的IP地址
172.16,2.1 不是合法的IP地址

 

http://www.bkjia.com/IOSjc/1137745.htmlwww.bkjia.comtruehttp://www.bkjia.com/IOSjc/1137745.htmlTechArticleiOS面试中常见的算法题目,iOS面试常见算法 一、前言
这里是在iOS求职业中学自身碰着的算法题,希望对我们具备支持。不定时更新。如若我们…

一、 对以下一组数据进行降序排序(冒泡排序)。“24,17,85,13,9,54,76,45,5,63”

NSMutableArray * array = [NSMutableArray
arrayWithObjects:@”2″,@”1″,@”5″,@”65″,@”8″,@”90″,@”18″,nil];  

for(int i = 0;i<array,count-1;i++){

for(int j = 0;J<array.count-1-i;j++){

   if(array[j])>(array[j+1]){

  [array exchangeobjectatindex:j withobjectatindex:j+1];

}

}

}

留下评论

网站地图xml地图