C 學習記錄以及機器學習相關

2021-09-22 05:44:12 字數 2772 閱讀 1346

1.在vs code裡,讓乙個cpp檔案呼叫另乙個cpp檔案:

在開頭加入#include 「******.cpp」

在vs code裡,讓乙個cpp檔案呼叫自定義.**件:

在開頭加入#include 「******.h」

3.全域性資料區:存放全域性變數,靜態本地變數,靜態成員變數;

堆疊:存放本地變數;

堆:存放new出來的東西。

4.const和static的區別:

5.strlen與sizeof的區別與使用:

6.synchronized(物件鎖)和static synchronized(類鎖)的區別:

7.雜湊表hashtable:(與hashmap比較)

8.vector(不是特別必要):

9.c++常用標頭檔案

iostream 是輸入輸出流標頭檔案 cin cout等都要用

帶c的都是和c語言相關的,例如,加cstdio可以進行scanf和printf的使用,比cin,cout快

algorithm是演算法的標頭檔案,有一些演算法相關的函式,max等

10.return; return 0; return -1; return 1;的區別:

1 return, 如果什麼都不接的話,其實就是void型別函式的返回,返回後不再執行return後面的語句,如果函式執行成功返回0,不成功返回非0,一般情況下非0值常用-1來表示。

2 return 0:一般用在主函式結束時,表示程式正常終止,即告訴系統程式正常。

3 return -1::表示返回乙個代數值,一般用在子函式結尾。表示程式異常終止,即告訴系統程式異常

4 return 1:與return -1相同。

11.c++中->的意思:(動態指標)

指向結構變數的指標

乙個指標變數當用來指向乙個結構變數時,稱之為結構指標變數。結構指標變數中的值是所指向的結構變數的首位址。通過結構指標即可訪問該結構變數,這與陣列指標和函式指標的情況是相同的。

結構指標變數說明的一般形式為:

struct 結構名 *結構指標變數名

#includestruct stu   // 定義乙個結構體

;void main()

12.nullptr與null區別:

13.指標和應用作為函式引數的區別

下面的程式是可通過的(劍指offer)

class solution 

private:

void change(treenode* res, treenode*& pre)//此處函式的引入引數的格式,如果去掉&程式會報錯

};

如果在子函式中我們改變指標p指向物件的值時,第一種和第二種都可以。但是如果我們要改變指標p指向物件的話,只有第二種可以實現。

因為如果不使用&,那麼在函式中會自動呼叫指標的建構函式,構造乙個臨時指標,這個指標和傳進來的指標指向同乙個位置。我們可以通過這個臨時指標改變該位置的數值,但是如果把臨時指標指向另乙個位置時,並不會改變傳進來的指標指向的位置。

14、判斷一棵二叉樹是不是全二叉樹:

建立佇列在,暫存節點,依次判斷。

15.stl中map的使用

map的基本操作函式:

c++ maps是一種關聯式容器,包含「關鍵字/值」對

begin() 返回指向map頭部的迭代器

clear() 刪除所有元素

count() 返回指定元素出現的次數

empty() 如果map為空則返回true

end() 返回指向map末尾的迭代器

equal_range() 返回特殊條目的迭代器對

erase() 刪除乙個元素

find() 查詢乙個元素

get_allocator() 返回map的配置器

insert() 插入元素

key_comp() 返回比較元素key的函式

lower_bound() 返回鍵值》=給定元素的第乙個位置

max_size() 返回可以容納的最大元素個數

rbegin() 返回乙個指向map尾部的逆向迭代器

rend() 返回乙個指向map頭部的逆向迭代器

size() 返回map中元素的個數

swap() 交換兩個map

upper_bound() 返回鍵值》給定元素的第乙個位置

value_comp() 返回比較元素value的函式

16、c++中的迭代器iterator:

如vector::iterator ot;

string::iterator it;

17、sort函式的使用

#include

sort(numbers.begin(), numbers.end())

18、字串相關

19、c++的多型性

20、條件編譯(#ifdef)

21、l1正則化和l2正則化

l1正則化:

因此更容易產生權重w為0的情況,為稀疏化的權重矩陣

l2正則化

更容易產生較小的權重,也就是 權重上限收到限制,權重一般都較小

22、五大常用演算法

機器學習相關概念學習記錄一

一 監督學習 從給定的訓練資料集中學習出乙個函式 模型引數 當新的資料到來時,可以根據這個函式 結果。監督學習的訓練集要求包括輸入輸出,也可以說是特徵和目標。訓練集中的目標是由人標註的。監督學習就是最常見的分類 注意和聚類區分 問題,通過已有的訓練樣本 即已知資料及其對應的輸出 去訓練得到乙個最優模...

機器學習 學習記錄(四)

本篇部落格將介紹深度學習時所用到的一些tips。我們知道,機器學習的三大步驟 function set,goodness of function,pick up the best function 那如果我們最終得到的結果壞掉了怎麼辦。如果壞掉了,到底是這三步的哪乙個步驟出現了問題呢?結果的壞掉有兩...

機器學習 學習記錄六

本篇部落格將介紹semi supervised learning的實現方法 介紹 之前我們所介紹的機器學習所提到的資料都是帶有label的。而現實是,蒐集這些帶有label的資料並不是一件簡單的事情,但是蒐集一些不帶有label的資料就要容易很多。semi supervised learning指的...