原创 在O(1)複雜度下刪除指定的鏈表節點

常規的解法是O(n)時間,但是我們不需要找到需要刪除節點的前一個節點。我們可以很方便的找打要刪除節點的下一個節點,如果我們把下一個節點的內容複製到需要刪除的節點上覆蓋原有的內容,再把下一個節點刪除,就相當於把當前需要刪除的節點刪除掉了,只

原创 First Bad Version

這道題用Binar Search到是沒有什麼難度,主要的就是判斷中間點的時候容易出錯。起初我用的是left = 1, high = n; mid = (left + high)/2,但是不AC。後來發現當起始下標爲1的時候,這種求mid會

原创 102. Binary Tree Level Order Traversal

這是我做的第一個需要處理第一個節點的鏈表題目,參考了下Disuss裏面的答案。應該使用 ListNode* dummy = new ListNode(0)創建一個虛擬節點來表示頭節點的前一個節點。 class Solution

原创 C++學習之可變參數的函數與模板

C++學習之可變參數的函數與模板   所謂可變參數指的是函數的參數個數可變,參數類型不定的函數。爲了編寫能處理不同數量實參的函數,C++11提供了兩種主要的方法:如果所有的實參類型相同,可以傳遞一個名爲initializer_list的標

原创 LeetCode Reverse Bits 的C++解決4ms

最開始想到的是先把無符號數n轉換成二進制,然後把每一位依次存放到vector容器中,最後在以相反的順序取出每一位的值換成十進制即可。代碼如下: class Solution { public: uint32_t rever

原创 Linked List Cycle

起初看到這個題目,毫無頭緒,沒有理解題目意思,後來在網上看了一下大家的思路,寫一下我現在看到最簡單的一種方法: 利用兩個指針,slow,fast。兩者均從頭開始,slow每次一步,fast每次2步,如果是一個環的話,它們倆肯定會碰到;如

原创 Reverse Linked List

最開始我想到的是用先遍歷鏈表,把元素存入數組中,然後反向遍歷數組在重新生成一個鏈表。首先判斷當鏈表沒有節點,或只有一個節點的時候,反轉後還是它本身,直接返回頭節點。在leetcode提交的runtime是8ms代碼如下: <span s

原创 Implement strStr()

這題使用Two pointer思路,最開始我的思路是正確的,但是提交的時候提示超時,後來改了一下判斷的流程:代碼如下: int strStr(string haystack, string needle) { int in

原创 Python的三種可變參數

初學python沒多久,對python中函數的可變參數有點頭暈,查閱了stackflow,現總結一下 可變參數 可變參數應該最簡單,在C/C++和Java等語言中都有,就是用*號來表示,例如 def testArg(*arg) 你可以

原创 word中在分頁符後設置標題的段前間距

這個問題今天困擾很久,之前一頁用了分頁符,然後這一章的標題死活設置不了段前間距,只能設置段後標記。 然後摸索中發現,只要在該段的段首處插入一個“連續”的分節符就行了。效果如下:

原创 快速排序C++實現(遞歸,非遞歸)

#include <iostream> #include <vector> #include <stack> using namespace std; int quickSortRecusive(vector<int>& data,in

原创 16年校招網易測試開發面試記錄

一面:  1、替換字符串(sed -n 's/xxx/xxx')  2、查找log文件中errno:出現的接下來的五行(awk|sed)  3、github的遠程分支同步更新  4、測試用例(單曲,循環,隨機),重點隨機

原创 C++隨筆

unordered_map容器比map容器更快地通過鍵值訪問他們的單個元素 靜態變量是存放在全局數據區的,sizeof是計算棧中分配的大小,所以不會計算在內 char str[] = “hello world” 分配的是局部變量,不能

原创 sqlalchemy使用方法

from contextlib import contextmanager @contextmanager def session_scope(): """Provide a transactional scope around

原创 通過shell配合expect自動輸入賬號密碼登陸ssh或ftp

最近經常需要通過SSH和ftp連接到騰訊雲的Linux服務器,每次都需要輸入賬號密碼,實在是太麻煩了,於是就查了一下自動化的方式。 Expect Expect是Unix系統中用來進行自動化控制和測試的軟件工具,由Don Libes製作