碰到的知识点都总结成笔记了,方便自己学习

牛客编程基础知识点:

1、Ascii码表有多少不同的字符编码?

答:128个。因为使用

2、c++中 操作 double d = 2.3 ;  d>>2; 对吗?那 !d (d取反)对吗?

答:所有的位运算都不能直接操作浮点数,逻辑运算符操作数可以是任何基本数据类型,所以前者错,后者对。

3、如何理解对象之间的赋值?

Student std1,std2;

std2 = std1;

对象的赋值只是对数据成员赋值,而不是对成员函数赋值。

4.c++中struct和class有什么区别?

5、c++模版函数的一般形式是怎样的?

答:template <class type> ret-type func-name(parameter list), 这里type是函数所使用的数据类型的占位符,这个名称可以在函数定义中使用。

6、C++判断队列为空 queue.empty(),为空返回true,否则返回false

Java判断队列是否为空,queue.isEmpty(),返回同上。

7、java中的queue.poll()和remove(), offer()和add()有什么区别。

java里,往队列里面添加元素有两个方法,分别是add和offer,如果队列满了,继续执行add()方法,会报IllegalStateException异常,在有容量限制的队列中,最好用offer(), 删除队列头的元素,这个方法和poll方法的不同之处在于,这个方法在队列为空的时候选择抛异常.poll方法也是删除队列头的远,如果队列为空的化,返回null

8、说一说 return,continue,break的区别?

return,break,continue三者区别

break用于完全结束一个循环,跳出循环体。不管是哪种循环,一旦在循环体中遇到break,系统将完全结束循环,开始执行循环之后的代码。 break不仅可以结束其所在的循环,还可结束其外层循环。此时需要在break后紧跟一个标签,这个标签用于标识一个外层循环。Java中的标签就是一个紧跟着英文冒号(:)的标识符。且它必须放在循环语句之前才有作用。

public class BreakTest2
{
  public static void main(String[] args){
    // 外层循环,outer作为标识符
    outer:
    for (int i = 0 ; i < 5 ; i++ ){
      // 内层循环
      for (int j = 0; j < 3 ; j++ ){
        System.out.println("i的值为:" + i + " j的值为:" + j);
        if (j == 1){
          // 跳出outer标签所标识的循环。
           break outer;
        }
      }
    }
  }
}

continue的功能和break有点类似,区别是continue只是中止本次循环,接着开始下一次循环。而break则是完全中止循环。

public class ContinueTest
{
  public static void main(String[] args){
// 一个简单的for循环
    for (int i = 0; i < 3 ; i++ ){
       System.out.println("i的值是" + i);
       if (i == 1){
         // 忽略本次循环的剩下语句
         continue;
       }
       System.out.println("continue后的输出语句");
    }
  }
}

return关键字并不是专门用于跳出循环的,return的功能是结束一个方法。 一旦在循环体内执行到一个return语句,return语句将会结束该方法,循环自然也随之结束。与continue和break不同的是,return直接结束整个方法,不管这个return处于多少层循环之内。

public class ReturnTest
{
  public static void main(String[] args){
    // 一个简单的for循环
    for (int i = 0; i < 3 ; i++ ){
      System.out.println("i的值是" + i);
      if (i == 1){
        return;
      }
      System.out.println("return后的输出语句");
    }
  }
}

9、判断结构体大小的三条准则(高频考点)

答:

python基础知识点:

1、说说什么是闭包,举个例子?

闭包可以理解为一种特殊的函数,它由两个函数嵌套组成,且称之为外函数和内函数,外函数返回值是内函数的引用,这就构成了闭包,in other words, 当一个嵌套函数在其外部区域引用了一个值时,该嵌套函数就是一个闭包。

举例:

def adder(x):def wrapper(y):return x+yreturn warpperadder5 = adder(5)
print(adder5(adder5(6))

总结闭包的一般描述如下

计算机基础部分:

知识点1:  JPEG是有损压缩,它的升级版JPEG2000可以支持无损压缩

常见的无损压缩格式有: BMP(支持1位,4位,8位,24位颜色深度),PNG,GIF,TGA

数论部分:

知识点1:说一说费马小定理: 如果指数部分p是一个质数,并且不是底数a的整数倍,那么 a^(p-1) = 1(mod p).

概率与统计知识:

条件概率,全概率,贝叶斯公式理解

简介

学过概率理论的人都知道条件概率的公式:P(AB)=P(A)P(B|A)=P(B)P(A|B);即事件A和事件B同时发生的概率等于在发生A的条件下B发生的概率乘以A的概率。由条件概率公式推导出贝叶斯公式:P(B|A)=P(A|B)P(B)/P(A);即,已知P(A|B),P(A)和P(B)可以计算出P(B|A)。

假设B是由相互独立的事件组成的概率空间{B1,b2,...bn}。则P(A)可以用全概率公式展开:P(A)=P (A|B1)P(B1)+P(A|B2)P(B2)+..P(A|Bn)P(Bn)。贝叶斯公式表示成:P(Bi|A)=P(A|Bi)P(Bi)/(P(A|B1)P(B1)+P(A|B2)P(B2)+..P(A|Bn)P(Bn));常常把P(Bi|A)称作后验概率,而P(A|Bn)P(Bn)为先验概率。而P(Bi)又叫做基础概率。

贝叶斯公式:

Newcoder和LeetCode七月刷题笔记相关推荐

  1. leetcode分类刷题笔记

    leetcode分类刷题笔记--基于python3 写在前面 1.做题如果实在想不出时间复杂度比较优的解法,可以先写出暴力解法,尝试在其基础上优化 2.排序.双指针.二分等--经常可以优化时间复杂度 ...

  2. LeetCode部分刷题笔记!!!JavaScript!!!

    详细解说请看视频JS老毕:人人都能看得懂的Leetcode力扣刷题教程合集 边看视频边记录笔记!!!部分题目在视频中无! 文章目录 LeetCode第1题:1. 两数之和 LeetCode第2题:2. ...

  3. Newcoder和Leetcode5月刷题笔记

    知识点1: 用户标识符要求由字母.数字.下划线组成,并且不能用数字作为标识符的开头. 知识点2:树从根结点开始往下数,叶子结点所在的最大层数称为 树的深度.从0开始数,深度=高度-1,从1开始数,深度 ...

  4. Leetcode Math刷题笔记

    165. Compare Version Number blog.csdn.net/crazy1235/a- 66. Plus One 遍历每一位,如果小于9则直接加一return,反之则为0.如果l ...

  5. 力扣(LeetCode)刷题笔记

    给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标. 注:你可以假设每种输入只会对应一个答案.但是,你不能重复利用这个数组中同样的元 ...

  6. LeetCode Java刷题笔记—876. 链表的中间结点

    876. 链表的中间结点 给定一个头结点为 head 的非空单链表,返回链表的中间结点.如果有两个中间结点,则返回第二个中间结点. 简单难度.使用快慢指针即可,快指针fast每次走2步,慢指针slow ...

  7. LeetCode Java刷题笔记—297. 二叉树的序列化与反序列化

    297. 二叉树的序列化与反序列化 请实现两个函数,分别用来序列化和反序列化二叉树.这里不限定你的序列 / 反序列化算法执行逻辑,你只需要保证一个二叉树可以被序列化为一个字符串并且将这个字符串反序列化 ...

  8. 卷进大厂系列之LeetCode刷题笔记:二分查找(简单)

    LeetCode刷题笔记:二分查找(简单) 学算法,刷力扣,加油卷,进大厂! 题目描述 涉及算法 题目解答 学算法,刷力扣,加油卷,进大厂! 题目描述 力扣题目链接 给定一个 n 个元素有序的(升序) ...

  9. 赞!Google 资深软件工程师 LeetCode 刷题笔记首次公开

    有人说写代码就像我们平时开车,仅凭经验你就可以将车开走:但当有一天,这辆车出问题跑不起来的时候,你不懂汽车的运行机制,你要怎么排除和解决问题?所以拥有扎实的数据结构和算法,才能开好编程这辆车. 作为程 ...

最新文章

  1. Python再夺冠,上古语言COBOL大流行,IEEE Spectrum 2020年度编程语言排行榜出炉!...
  2. YoloAll V2发布,集成所有主流Yolo模型于一身
  3. php3.2.3分组查询,ThinkPHP3.2.3版本如何设置应用分组
  4. 高考能否决定一个人的命运?抱歉,真的可以!
  5. 地图旋转_如何使用万能地图下载器计算七参数
  6. JDK1.6和JDK1.7中,Collections.sort的区别,
  7. 40. 若一个类是函数子,则应该使它可配接
  8. 20个命令行工具监控 Linux 系统性能
  9. 数据可视化方向的毕业设计详细思路
  10. python pytz_python pytz是什么
  11. 怎么把Word转PDF格式?分享几种好用的转换方法
  12. 【云原生之k8s】kubeadm搭建k8s集群
  13. datawhale学习小组 Task4:方差分析
  14. js利用tab键切换当前页面_JavaScript跳转到指定页面并且到指定的tab切换窗口
  15. react 组件渲染控制
  16. NOIP2009 普及组 复赛 poly 多项式输出
  17. 电脑端上有哪些免费好用的思维导图软件?
  18. Python “最短”挑战(12.21)
  19. C#使用Emgu实现大图找图,并获得匹配区域
  20. π122M31 双通道数字隔离器 CAN通信隔离兼容ADuM7241ARZ

热门文章

  1. [转]Oracle 错误大全
  2. 财富自由了的蚂蚁金服,现在把面试门槛提到这么高了?
  3. 无需手机仅用pn532 完成小米手环3NFC 校园卡模拟
  4. SQL 中distinct用法详解
  5. 华为机试:报文解压缩
  6. 漫谈RocksDB(一)简介——家有美女初长成,一朝成名天下知
  7. 打印服务器配置与设计文档,配置与管理打印服务器.ppt
  8. 数字IC前端设计究竟怎样?薪资前景如何?
  9. 初中数学四十二个几何模型_初中数学常见几何模型全解析
  10. SmartGit合并分支