zoukankan      html  css  js  c++  java
  • 笔试题—知识点汇总(一)

    目录:

    1、有序树转换二叉树

    2、洗牌问题

    3、矩阵秩的几何意义

    1、有序树转换二叉树

      如果T2是由有序树T转换而来的二叉树,那么T中结点的前序就是T2中结点的前序,T中结点的后序就是T2中结点的中序

     2、洗牌问题

      简单直接的方法:对数组从头到尾扫描一遍,扫描过程中,每次都从整个数组随机选一个元素,跟当前扫描到的元素交换位置。也就是,先拿起第一张牌,把它跟从整副牌里随机挑出的另一张牌(把它叫做随机牌)交换位置(随机牌也可能是第一张牌自己,这个时候就相当于不交换位置);接着拿起第二张牌,也把它跟随机选出的另一张牌交换位置;一直重复直到把最后一张牌跟随机牌交换位置。

      但是实际并不公平,有些组合出现概率会大些,解释:https://yjk94.wordpress.com/2017/03/17/%E6%B4%97%E7%89%8C%E7%9A%84%E6%AD%A3%E7%A1%AE%E5%A7%BF%E5%8A%BF-knuth-shuffle%E7%AE%97%E6%B3%95/

      Knuth洗牌算法:唯一修改的就是随机牌j选取的方法,在拿起第i张牌时,只从它之后(或者之前)的牌随机选出j,而不是从整副牌里面随机选取。这次概率就相同了。

    vector<int> shuffle() {
            vector<int> res=v;
            for(int i=0;i<res.size();++i)
            {
                int t = i + rand()%(res.size()-i);//从当前位置之后的书中随机找一个交换位置
                swap(res[i],res[t]);
            }
            return res;
        }

     3、矩阵秩的几何意义

      一个向量组中,极大线性无关组中向量的个数,就是矩阵的秩。

      可以用于降维,去除相关性大的向量,保留主要的向量。SVD降维。

  • 相关阅读:
    HeadFirst学习笔记-1. 设计模式入门(转载)
    【译】StackExchange.Redis 中文文档目录(转载)
    Redis基础篇(一)数据类型与数据结构(转载)
    Redis基础(二)数据库(转载)
    Redis基础篇(八)数据分片(转载)
    Redis基础篇(七)哨兵机制(转载)
    Redis基础篇(六)数据同步:主从复制(转载)
    Python特点
    Python发展历史
    Python基础
  • 原文地址:https://www.cnblogs.com/eilearn/p/9507349.html
Copyright © 2011-2022 走看看