公司坐标:重庆

岗位:C++后台开发

面试时长:45分钟

主要问题记录:

(1)手写代码

冒泡算法的实现:

/**
  * 冒泡排序:C++
  *
  * @author skywang
  * @date 2014/03/11
  */
   
  #include <iostream>
  using namespace std;
   
  /*
  * 冒泡排序
  *
  * 参数说明:
  * a -- 待排序的数组
  * n -- 数组的长度
  */
  void bubbleSort1(int* a, int n)
  {
  int i,j,tmp;
   
  for (i=n-1; i>0; i--)
  {
  // 将a[0...i]中最大的数据放在末尾
  for (j=0; j<i; j++)
  {
  if (a[j] > a[j+1])
  {
 

// 交换a[j]和a[j+1]

//当用swap()函数进行交换时,swap是包含在std中的

//另外补充C++中sort函数是包含在头文件<algorithm>中

  tmp = a[j];
  a[j] = a[j+1];
  a[j+1] = tmp;
  }
  }
  }
  }
 
int main()
  {
  int i;
  int a[] = {20,40,30,10,60,50};
  int ilen = (sizeof(a)) / (sizeof(a[0]));
 

//这里用sizeof()求解数组的长度,在笔试的时候没有想出来

先对数组随意进行初始化,主要是通过这个表示数组的长度

  cout << "before sort:";
  for (i=0; i<ilen; i++)
  cout << a[i] << " ";
  cout << endl;
   
  bubbleSort1(a, ilen);
  //这里调用之前定义的冒泡算法,注意!!!没有前面的函数返回类型哦(void)
   
  cout << "after sort:";
  for (i=0; i<ilen; i++)
  cout << a[i] << " ";
  cout << endl;
   
 

return 0;

//注意在写程序的时候其实可以先把主体的框架写出来,然后在里面填东西即可。

  }

(2)数据结构中排序算法的时间复杂度

快排:O(nlogn) 冒泡:O(n^2) 选择:O(n^2) 插入:O(n^2)

希尔:O(nlogn) 归并:O(nlogn) 堆排:O(nlogn)

稳定的有:冒泡、插入、归并

(3)C++内容

a.多态是咋回事(多态分为静态多态和动态多态,静态是重载,在编译时进行;动态多态是靠虚函数机制实现,在运行期间动态绑定。基类指针指向子类的对象,会调用在子类中重写的函数)

b.类继承的方式?为什么会有这些方式,作用是什么?

继承的访问限定符有:

public / protected /private

我们都知道很多类都有自己的数据成员以及函数,在编写程序时,会有很多类的拥有相同的数据成员和函数,为了节省时间以及代码量,我们把这些公共的数据和函数封装成一个类,后面的类只要继承这个类即可。

c.sizeof()

32位系统下某某些变量的sizeof()

其中有一个字符数组其中包含转义字符求它的sizeof()没求出来。。

char a[]="\\123456\123456\t";

sizeof(a)=12

区分转义字符‘\’与‘/’

(4)网络编程了解吗??

并不了解。

2019.08.02 云从科技C++后台开发的更多相关文章

  1. 【纪中集训】2019.08.02【NOIP提高组】模拟 A 组TJ

    \(\newcommand{\RNum}[1]{\uppercase\expandafter{\romannumeral #1\relax}}\) T1 一道可以暴力撵标算的题-- Descripti ...

  2. 袋鼠云旗下新公司云掣科技启航,深耕云MSP业务助推企业数字化转型

    1983年3月15日,国际消费者联盟组织将3月15日确立为国际消费者权益日. 2019年3月15日,袋鼠云举办三周年年会. 一生二,二生三,三生万物.植树节后,万物生长. 年会现场,袋鼠云宣布成立新公 ...

  3. 云从科技 OCR任务 pixel-anchor 方法

    云从科技提出了一种端到端的深度学习文本检测框架Pixel-Anchor,通过特征共享的方式高效的把像素级别的图像语义分割和锚检测回归放入一个网络之中, 把像素分割结果转换为锚检测回归过程中的一种注意力 ...

  4. IT咨询顾问:一次吐血的项目救火 java或判断优化小技巧 asp.net core Session的测试使用心得 【.NET架构】BIM软件架构02:Web管控平台后台架构 NetCore入门篇:(十一)NetCore项目读取配置文件appsettings.json 使用LINQ生成Where的SQL语句 js_jquery_创建cookie有效期问题_时区问题

    IT咨询顾问:一次吐血的项目救火   年后的一个合作公司上线了一个子业务系统,对接公司内部的单点系统.我收到该公司的技术咨询:项目启动后没有规律的突然无法登录了,重新启动后,登录一断时间后又无法重新登 ...

  5. Visual Studio 2019使用码云设置过滤忽略的文件或文件夹(ignore file)

    Visual Studio 2019使用码云的时候,会遇到 “Git failed with a fatal error.error: open(".vs/{{项目名称}}/Server/s ...

  6. MyBatis 配置/注解 SQL CRUD 经典解决方案(2019.08.15持续更新)

    本文旨在记录使用各位大神的经典解决方案. 2019.08.14 更新 Mybatis saveOrUpdate SelectKey非主键的使用 MyBatis实现SaveOrUpdate mybati ...

  7. 2019年达内云PS淘宝美工平面UI/UX/UE/UED影视后期交互设计师视频

    2019年达内云PS淘宝美工平面UI/UX/UE/UED影视后期交互设计师视频 百度网盘链接一 百度网盘链接二

  8. SpringBoot技术栈搭建个人博客【后台开发】

    前言:在之前,我们已经完成了项目的基本准备,那么就可以开始后台开发了,突然又想到一个问题,就是准备的时候只是设计了前台的RESTful APIs,但是后台管理我们同样也是需要API的,那么就在这一篇里 ...

  9. 【分享】Java后台开发精选知识图谱

    地址 引言: 学习一个新的技术时,其实不在于跟着某个教程敲出了几行.几百行代码,这样你最多只能知其然而不知其所以然,进步缓慢且深度有限,最重要的是一开始就对整个学习路线有宏观.简洁的认识,确定大的学习 ...

随机推荐

  1. 原来INF文件是干这个的

    When the drivers for a device are installed, the installer uses information in an information (INF) ...

  2. Foundation-常用结构体

    复习 void test(){ struct Date{ int year; int month; int day; }; struct Date d={2015,5,14}; d.day=6; } ...

  3. 内存管理2-set方法的内存管理-程序解析

    创建class Book .h 有@ property float price;  //@synthesize 自动 ------------ 创建class Student #import &quo ...

  4. Python3使用openpyxl读写Excel文件

    Python中常用的操作Excel的三方包有xlrd,xlwt和openpyxl等,xlrd支持读取.xls和.xlsx格式的Excel文件,只支持读取,不支持写入.xlwt只支持写入.xls格式的文 ...

  5. 关于在vue项目中使用wangEditor

    1,vue中安装wangEditor 使用的npm安装 npm install wangeditor --save 2,创建公用组件 在components中创建wangEnduit文件夹 组件内容为 ...

  6. HDU 1160 FatMouse's Speed ——(DP)

    又是那个lis变形的题目. 但是不好定义严格的比较符号,因此只能n^2去做.值得注意的一个是要先排序,因为可能可以先选后面的再选前面的,先排序的话就能够避免这个问题.但是要注意,因为要输出路径,所以要 ...

  7. jvm 线程状态

    NEW: Just starting up, i.e., in process of being initialized.NEW_TRANS: Corresponding transition sta ...

  8. linux系统rwx(421)、777权限详解

    摘要 linux的常见权限,mark一下 常用的linux文件权限如下: 444 r--r--r-- 600 rw------- 644 rw-r--r-- 666 rw-rw-rw- 700 rwx ...

  9. Js 中那些 隐式转换

    曾经看到过这样一个代码:  (!(~+[])+{})[--[~+""][+[]]*[~+[]]+~~!+[]]+({}+[])[[~!+[]*~+[]]] = sb , 你敢相信, ...

  10. Java 线程概述

    1 进程与线程基本概念 1.1 进程:执行中的程序 每个进程都有独立的代码和数据空间(进程上下文),进程空间切换会有较大的开销,一个进程包含1-n个线程.进程是资源分配的最小单位. 1.2 线程:进程 ...