2015网易互娱校园招聘笔试题游戏插件研发岗
时长:90分钟 总分:100分
119浏览 0人已完成答题
题型介绍
题型 | 单选题 | 多选题 | 判断题 | 简答题 |
---|---|---|---|---|
数量 | 4 | 3 | 3 | 6 |
根据要求写出pqueue的工作原理
#ifndef HEADER_PQUEUE_H #define HEADER_PQUEUE_H typedef struct_pqueue{ pitem *items int count }pqueue_s typedef struct_pqueue *pqueue typedef struct_pitem{ unsigned char priority[8] void *data struct_pitem *next }pitem typedef struct_pitem *piterator pitem *pitem_new(unsigned char *prio64be,void *data) void pitem_free(pitem *item) pqueue pqueue_new(void) void pqueue_free(pqueue pq) pitem *pqueue_insert(pqueue pq,pitem *item) pitem *pqueue_peek(pqueue pq) pitem *pqueue_pop(pqueue pq) pitem *pqueue_find(pqueue pq,unsigned char *prio64be) pitem *pqueue_iterator(pqueue pq) pitem *pqueue_next(piterator *iter) int pqueue_size(pqueue pq) #endif /*! HEADER_PQUEUE_H */pq_test.c如下:
#include<stdlib.h> #include<string.h> #include"pqueue.h" /*remember to change expected.txt if you change there values*/ unsigned char prio1[8]="supercal" unsigned char prio2[8]="ifragili" unsigned char prio3[8]="sticexpi" static void pqueue_print(pqueue pq) { pitem *iter,*item iter=pqueue_iterator(pq) for(item=pqueue_next(&iter)item!=NULL item=pqueue_next(&iter)){ printf("item\t%02x%02x%02x%02x%02x%02x%02x%02x\n", item ->priority[0],item->priority[1], item ->priority[2],item->priority[3], item ->priority[4],item->priority[5], item ->priority[6],item->priority[7], } } int main(void) { pitem *item pqueue pq pq=pqueue_new() item=pitem_new(prio3,NULL) pqueue_insert(pq,item) item=pitem_new(prio1,NULL) pqueue_insert(pq,item) item=pitem_new(prio2,NULL) pqueue_insert(pq,item) item=pqueue_find(pq,prio1) fprintf(stderr,"found %p\n",item->priority) item=pqueue_find(pq,prio2) fprintf(stderr,"found %p\n",item->priority) item=pqueue_find(pq,prio3) fprintf(stderr,"found %p\n",item->priority) pqueue_print(pq) for(item=pqueue_pop(pq)item!=NULLitem=pqueue_pop(pq)) pitem_free(item) pqueue_free(pq) return 0 }pq_test.sh如下:
#!/bin/sh set -e ./pq_test | cmp $srcdir/pq_expected.txt-pq_expected.txt如下:
item 6966726167696c69item 7374696365787069item 737570657263616c
比较B+Tree/Hash_Map/STL Map三种数据结构。
错误:unresolved external symbol BeginScene属于()阶段错误。
根据下面程序,a和b输出的结果是?
char *p1int64 *p2 p1=(char *)0x800000 p2=(int64 *)0x800000 char *a=p1+2 int64_t *b=p2+2那么a=(),b=()
采用线性探测的方式解决冲突,访问hash表的次数分别为多少?
32位系统上,如下语句的输出是多少?
char c1[]={'a','b','\0','d','e'} char c2[]="hello"sizeof(c1),strlen(c1),sizeof(c2),strlen(c2)值分别是()()()()。
请找出下面用于拷贝内存的代码中的逻辑错误,并修正。
void memcpy(const char* src,char* dest){ int len=strlen(src) dest=(char*)malloc(len) char* d=dest char* s=src while(len--!=0){ *d=*s d++ s++ } }
根据题目要求写出sql
CREATE TABLE t_account( account varchar(100), account_type TINYTEXT, PRIMARY KEY (account), }account为账号,account_type为该账号的类型,写出一个sql,统计账号数累计超过5000个账号类型,并显示对应的账号数,即结果中每行是(账号类型,账号数)