原创 Qt--實現簡單加法計算器

#ifndef WIDGET_H #define WIDGET_H #include <QWidget> #include<QPushButton> #include<QHBoxLayout> #include<QVBoxLayout

原创 c語言——面試之assert斷言使用

查看vs 2013assert定義,如下: #ifdef NDEBUG #define assert(_Expression) ((void)0) #else /* NDEBUG */ #ifdef __cplusplus

原创 Qt 下使用線程繪圖

 通過pushbutton關聯槽函數自定義線程drawImage,drawImage畫圖繪製完,發送updateImage(QImage image_date)信號 發送給對應的槽函數getImage(QImage)接收QImage圖片,

原创 QT編寫一個簡單的記事本

  1,ui界面界面設計,在最右面修改類和對象,對象的名稱 。關聯部件和槽函數 #ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> #include<Qt

原创 【貪心】活動安排問題

活動安排問題就是要在所給的活動集合中選出最大的相容活動子集合,是可以用貪心算法有效求解的很好例子。該問題要求高效地安排一系列爭用某一公共資源的活動。貪心算法提供了一個簡單、漂亮的方法使得儘可能多的活動能兼容地使用公共資源。        

原创 如何高效學習和工作(擼代碼)

一、如何高效地學習IT技能? 在線課堂學習方式: 三個一:思路一致、注意力一致、代碼一致 聽課方式: “三個注意”: 概念、場景、優缺點。   線下自我學習方式: 源碼學習法:三個注意:分析源碼思路、提取理論知識點和跟着思路敲一遍。 視頻

原创 SGI版的空間配置器解析

這篇文章主要介紹的是STL中空間配置器的底層實現。。。 1、爲什麼要存在空間配置器?  爲什麼要有空間配置器呢?這主要是從兩個方面來考慮的。 1、小塊內存帶來的內存碎片問題   單從分配的角度來看。由於頻繁分配、釋放小塊內存容易在堆中造成

原创 類型強轉

int i = 0; double d = i; //顯示的強制類型轉換 cout << i<<endl; int *p =&i; double b = (int)p;//顯示的強制類型轉換 cout << b;1 st

原创 排序--Bubble的優化和性能(算法時間、空間複雜度、穩定性)分析

  一、算法基本思想 (1)基本思想 冒泡排序的基本思想就是:從無序序列頭部開始,進行兩兩比較,根據大小交換位置,直到最後將最大(小)的數據元素交換到了無序隊列的隊尾,從而成爲有序序列的一部分;下一次繼續這個過程,直到所有數據元素都排好序

原创 右值引用與轉移語義

新特性的目的右值引用 (Rvalue Referene) 是 C++ 新標準 (C++11, 11 代表 2011 年 ) 中引入的新特性 , 它實現了轉移語義 (Move Sementics) 和精確傳遞 (Perfect Forwar

原创 【排序】插入排序,希爾排序,選擇排序,冒泡排序,堆排序,歸併排序優化及穩定性分析

InsertSort:(以升序爲例) 插入排序的基本思想是:     每次將一個待排的記錄,按照其關鍵字的大小,插入到前面已經排好序的有序區中適當的位置,直到全部記錄插入完畢爲止。     假設待排序的記錄存放在數組R[0..n]中,初始

原创 C語言模擬實現C++的繼承與多態

繼承與多態的概念   繼承:是面向對象最顯著的一個特性。繼承是指可以使用現有類的所有功能,可以使一個對象直接使用另一個對象的屬性方法。 通過繼承創建的新類稱爲“子類”或者“派生類”,被繼承的類稱爲“基類”或者“父類”。多態:簡單地概括爲“

原创 筆試之火柴棒問題

火柴棒問題 用火柴棒擺成的0-9間的數字,橫向由一根火柴構成,縱向都是由兩根火柴構成, 可按如下規則進行變化: 1.數字移動一根火柴棒可變成其它0到9之間合法的數字 2.數字添加一根火柴棒可變成其它0到9

原创 淺談hash實現原理

哈希表(散列表)通過將關鍵碼映射到表中的某個位置上來存儲元素,然後根據關鍵碼來訪問元素。 常用的hash函數有除留餘數法,線性探測,二次探測,開鏈法,在大部分情況下基本就是用開鏈法: 1、直接定址法 取關鍵字的某個線性函數作爲散列函數,H

原创 迭代器萃取

C++ 模板類型萃取技術   :https://blog.csdn.net/dream_1996/article/details/78866897