阿尔卡特笔试题目之二

2024-04-23 02:38

本文主要是介绍阿尔卡特笔试题目之二,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Part A是一些你的知识技能调查
Part B全是通信方面的东西,不会做了,题目都没看完
Part C是Computer Sience的东西。
前3道是选择题,很easy
1、用A[1...n]模拟栈,A[n]是栈底,当A[T]是当前栈顶时,POP操作后,当然栈顶是什么http://blog.csdn.net/weiweitj/archive/2008/04/27/2336067.aspx
2、假设二叉树的根是为0层,那么第i层最多有几个节点?2^(k-1)
3、以下各项那项是结构化编程语言不允许的
a if-else b loop-while,for c goto d function
4、给出软件生存周期图

一个软件从定义到开发、使用和维护,直到最终被弃用,要经历一个漫长的时期,通常把软件经历的这个漫长的时期称为生存周期。软件生存周期一般可分为 以下阶段:问题定义、需求分析与可行性研究、设计、编码、测试、运行与维护。软件生存期也可以分为三个大的阶段:计划阶段。开发阶段和维护阶段。

5、C的Structure和C++ 的class的什么不同之处

初始化、默认继承权限、默认访问权限
6、什么是virtual函数,为什么使用virtual函数
7、填空完成ip v4协议表头
8、你认为造成软件 crash的主要原因是什么,怎么预防?
9、用C自己写一个string copy函数

char *  strcpy( char *  strDest,  const   char *  strSrc)
{
    assert(NULL 
!= strDest);   
    assert(NULL 
!= strSrc);
    
char *tmp= strDest;
    
while("0" != (*tmp++ = *strSrc++));
        return strDest;
}


10、写一个双向链表的插入函数(from luocong)

template < typename T >
inline 
int  CDList < T > ::InsertBefore( const   int  pos,  const  T data)
{
    
int i;
    
int nRetPos;
    CNode
<T> *pTmpNode;
    CNode
<T> *pNewNode;

    pNewNode 
= new CNode<T>;
    
if (NULL == pNewNode)
    
{
        nRetPos 
= 0;
        
goto Exit0;
    }


    pNewNode
->data = data;

    
// if the list is empty, replace the head node with the new node.
    if (NULL == m_pNodeHead)
    
{
        pNewNode
->prior = NULL;
        pNewNode
->next = NULL;
        m_pNodeHead 
= pNewNode;
        m_pNodeTail 
= pNewNode;
        nRetPos 
= 1;
        
goto Exit1;
    }


    
// is pos range valid?
    ASSERT(1 <= pos && pos <= m_nCount);

    
// insert before head node?
    if (1 == pos)
    
{
        pNewNode
->prior = NULL;
        pNewNode
->next = m_pNodeHead;
        m_pNodeHead
->prior = pNewNode;
        m_pNodeHead 
= pNewNode;
        nRetPos 
= 1;
        
goto Exit1;
    }


    
// if the list is not empty and is not inserted before head node,
    
// seek to the pos of the list and insert the new node before it.
    pTmpNode = m_pNodeHead;
    
for (i = 1; i < pos; ++i)
    
{
        pTmpNode 
= pTmpNode->next;
    }

    pNewNode
->next = pTmpNode;
    pNewNode
->prior = pTmpNode->prior;

    pTmpNode
->prior->next = pNewNode;
    pTmpNode
->prior = pNewNode;

    
// if tail node, must update m_pNodeTail
    if (NULL == pNewNode->next)
    
{
        m_pNodeTail 
= pNewNode;
    }


    nRetPos 
= pos;

Exit1:
    
++m_nCount;
Exit0:
    
return nRetPos;
}


template
< typename T >
inline 
int  CDList < T > ::InsertAfter( const   int  pos,  const  T data)
{
    
int i;
    
int nRetPos;
    CNode
<T> *pNewNode;
    CNode
<T> *pTmpNode;

    pNewNode 
= new CNode<T>;
    
if (NULL == pNewNode)
    
{
        nRetPos 
= 0;
        
goto Exit0;
    }


    pNewNode
->data = data;

    
// if the list is empty, replace the head node with the new node.
    if (NULL == m_pNodeHead)
    
{
        pNewNode
->prior = NULL;
        pNewNode
->next = NULL;
        m_pNodeHead 
= pNewNode;
        m_pNodeTail 
= pNewNode;
        nRetPos 
= 1;
        
goto Exit1;
    }


    
// is pos range valid?
    ASSERT(1 <= pos && pos <= m_nCount);

    
// if the list is not empty,
    
// seek to the pos of the list and insert the new node after it.
    pTmpNode = m_pNodeHead;
    
for (i = 1; i < pos; ++i)
    
{
        pTmpNode 
= pTmpNode->next;
    }


    pNewNode
->next = pTmpNode->next;
    pNewNode
->prior = pTmpNode;

    
// if NewNode's position is m_pNodeTail, update m_pNodeTail
    if (pTmpNode->next == m_pNodeTail)
    
{
        m_pNodeTail
->prior = pNewNode;
    }


    pTmpNode
->next = pNewNode;

    
// if tail node, must update m_pNodeTail
    if (NULL == pNewNode->next)
    
{
        m_pNodeTail 
= pNewNode;
    }


    nRetPos 
= pos + 1;

Exit1:
    
++m_nCount;
Exit0:
    
return nRetPos;
}

 

Part D (optional)
给出你认为贝尔会感兴趣的topic

我只做了Part C,那个ip v4也忘了,后面也就没兴趣做下去

这篇关于阿尔卡特笔试题目之二的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/927563

相关文章

题目1254:N皇后问题

题目1254:N皇后问题 时间限制:1 秒 内存限制:128 兆 特殊判题:否 题目描述: N皇后问题,即在N*N的方格棋盘内放置了N个皇后,使得它们不相互攻击(即任意2个皇后不允许处在同一排,同一列,也不允许处在同一斜线上。因为皇后可以直走,横走和斜走如下图)。 你的任务是,对于给定的N,求出有多少种合法的放置方法。输出N皇后问题所有不同的摆放情况个数。 输入

题目1380:lucky number

题目1380:lucky number 时间限制:3 秒 内存限制:3 兆 特殊判题:否 提交:2839 解决:300 题目描述: 每个人有自己的lucky number,小A也一样。不过他的lucky number定义不一样。他认为一个序列中某些数出现的次数为n的话,都是他的lucky number。但是,现在这个序列很大,他无法快速找到所有lucky number。既然

如何编写Linux PCIe设备驱动器 之二

如何编写Linux PCIe设备驱动器 之二 功能(capability)集功能(capability)APIs通过pci_bus_read_config完成功能存取功能APIs参数pos常量值PCI功能结构 PCI功能IDMSI功能电源功率管理功能 功能(capability)集 功能(capability)APIs int pcie_capability_read_wo

【408数据结构】散列 (哈希)知识点集合复习考点题目

苏泽  “弃工从研”的路上很孤独,于是我记下了些许笔记相伴,希望能够帮助到大家    知识点 1. 散列查找 散列查找是一种高效的查找方法,它通过散列函数将关键字映射到数组的一个位置,从而实现快速查找。这种方法的时间复杂度平均为(

【秋招笔试】9.07米哈游秋招改编题-三语言题解

🍭 大家好这里是 春秋招笔试突围,一起备战大厂笔试 💻 ACM金牌团队🏅️ | 多次AK大厂笔试 | 大厂实习经历 ✨ 本系列打算持续跟新 春秋招笔试题 👏 感谢大家的订阅➕ 和 喜欢💗 和 手里的小花花🌸 ✨ 笔试合集传送们 -> 🧷春秋招笔试合集 🍒 本专栏已收集 100+ 套笔试题,笔试真题 会在第一时间跟新 🍄 题面描述等均已改编,如果和你笔试题看到的题面描述

码蹄集部分题目(2024OJ赛9.4-9.8;线段树+树状数组)

1🐋🐋配对最小值(王者;树状数组) 时间限制:1秒 占用内存:64M 🐟题目思路 MT3065 配对最小值_哔哩哔哩_bilibili 🐟代码 #include<bits/stdc++.h> using namespace std;const int N=1e5+7;int a[N],b[N],c[N],n,q;struct QUERY{int l,r,id;}que

两道笔试题

“char a='\72'”是什么意思? 这么理解:\为转义字符,\072转义为一个八进制数072,也就是十进制数的58买一送一,将转义字符对照表也一并贴给你吧:转义字符 意义 ASCII码值(十进制) \a 响铃(BEL) 007 \b 退格(BS) 008 \f 换页(FF) 012 \n 换行(LF) 010 \r 回车(CR) 013 \t 水平制表(HT) 009 \v 垂直制表(VT

2024 年高教社杯全国大学生数学建模竞赛题目——2024 年高教社杯全国大学生数学建模竞赛题目的求解

2024 年高教社杯全国大学生数学建模竞赛题目 (请先阅读“ 全国大学生数学建模竞赛论文格式规范 ”) 2024 年高教社杯全国大学生数学建模竞赛题目 随着城市化进程的加快、机动车的快速普及, 以及人们活动范围的不断扩大,城市道 路交通拥堵问题日渐严重,即使在一些非中心城市,道路交通拥堵问题也成为影响地方经 济发展和百姓幸福感的一个“痛点”,是相关部门的棘手难题之一。 考虑一个拥有知名景区

Pr 入门系列之二:导入与管理素材(下)

◆  ◆  ◆ 管理素材 导入素材后,项目面板中每一个媒体都只是原始素材的“链接”。 所以,视频编辑过程中一般情况下都不会破坏原始素材。 1、在不同视图模式下组织素材 项目面板提供了三大视图 View供选用:列表视图、图标视图以及自由格式视图。 A. 锁定 B. 列表视图 C. 图标视图 D. 自由格式视图 E. 缩放滑块 F. 排序图标 G. 自动匹配序列 H. 查找 I. 新建素材箱 J.

力扣 739. 每日温度【经典单调栈题目】

1. 题目 理解题意: 1.1. 给一个温度集合, 要返回一个对应长度的结果集合, 这个结果集合里面的元素 i 是 当前 i 位置的元素的下一个更高温度的元素的位置和当前 i 位置的距离之差, 若是当前元素不存在下一个更高温度的元素, 则这个位置用0代替; 2. 思路 本题用单调栈来求解;单调栈就适用于来求当前元素左边或者右边第一个比当前元素大或者小的元素;【单调栈:让栈中的元素保持单调