2016年5月面试题(Unity&iOS)

NGUI的DrawCall

  1. drawcall定义:对底层图形程序(比如:OpenGL ES)接口的调用,以在屏幕上画出东西。

List在内存中连续的空间保存

List是线性直接存储类型

mipMap是什么?

mipMap是摄像机离得远近用不同的图片 - 参考文章

折半查找算法 GitHub算法链接(C++)


#include <stdio.h>
#include <stdlib.h>

#define MAX 100

int main()
{
    int binaryFind(int[],int,int);
    void printArray(int[],int);

    int n,i,j,key,array[MAX];
    printf("\t\t\t\tBinaryFind8\nInput the size of the array:");
    scanf(" %d",&n);

    printf("Input a sort of increase numbers:\n");
    for(i=0; i<n; i++)
        scanf(" %d",&array[i]);
    printf("Input finished!\n");

    printf("Input the key you would like to find:");
    scanf(" %d",&key);
    j = binaryFind(array,n,key);

    printf("\nThe position of the key is : %d",j+1);


    system("pause");
    return 0;

}


int binaryFind(int array[],int n,int key)
{
    //low低值,high高值,mid中值
    int low = 0;
    int high = n-1;
    int mid;

    //查找key
    while(low <= high)
    {
        //更新中间位置index
        mid = (low + high)/2;

        //找到key,返回位置index
        if(array[mid] == key)
            return mid;
        //中值大于key,key在前半部分,更新high
        else if(array[mid] > key)
            high = mid-1;
        //中值小于key,key在后半部分,更新low
        else low = mid+1;
    }

    //没有找到,返回-1
    return -1;
}


//打印数组
void printArray(int array[] ,int n)
{
     int i = 0;
     while(i<n)
     {
         printf(" %d",array[i]);
         i++;
     }
}

iOS weakstrong

只要有任何strong 指向某个对象A,ARC就不会摧毁它(A)。
而weak所指向的对象B,只要没有其他strong指向该对象(B),ARC会摧毁它(B)。

iOS 深复制浅复制

浅复制,并不拷贝对象本身,仅仅是拷贝指向对象的指针;深复制是直接拷贝整个对象内存到另一块内存中。

信号量机制解决多线程问题

系统级的多线程同步共享资源,利用其可实现多线程的协同工作。

posted on 2016-05-30 17:33  xGull  阅读(410)  评论(0)    收藏  举报

导航