首页 > 代码库 > C C++ 常被人问的问题分析

C C++ 常被人问的问题分析

正文  -  开始了, 直接扯淡

  以下都是自己面试中遇到的, 和总结的.如有不妥的地方就当见笑了. 哈哈

 

1. 谈谈你们服务器的架构吧.

分析:

  假如这是第一个问题, 你可以走了. 可能各方面原因他不想要你. 或者其它意外已经有人, 他只是为了学一点东西.

哈哈.一般面试游戏服务器开发的时候, 一定会问的. 关于游戏服务器架构, 需要自己努力积累是硬功夫. 没有个100页doc难搞下来.

而且不同公司架构还是很不一样. 只是为了应对面试,可以参照

   MMORPG服务器架构  http://www.blogjava.net/landon/archive/2012/07/14/383092.html

   云风的 BLOG http://blog.codingnow.com/

至少可以简单扯一点, 对吧.

 

2. 有时候也会问,项目组正在开发中问题. 因公司而异.

例如怎么设计跨服对战的业务, 怎么设计一个棋牌的随机排序算法.

分析: 

  1)对于跨服对战, 当初是个卡牌战斗类, 简单些. 按照老套路

    a) 每个服前10名, 特定时间报名

    b) 按照服务器id,玩家id 构建一个新服

    c) 参照老套路了, 有了新服对战开始了...

  2) 对于棋牌的随机算法, 基本都是一个傻大哈方法

//
//    简单棋牌随机算法
//  chess    : 存放棋牌的数组
//    len        : 棋牌处理长度
//
void chess_rand(char chess[], int len) {
    if (!chess || len < 2)
        return;
    
    for (int i = 0; i < len; ++i) {
        int j = rand() % len;
        if (i != j) {
            char c = chess[i];
            chess[i] = chess[j];
            chess[j] = c;
        }
    }
}

具体就是你做过就按照你做过的思路说, 没做过就说要是我遇到这个问题会怎么处理.

 

 

后记 - 新的开始, 哈哈

 

C C++ 常被人问的问题分析