原创 476. Number Complement(給一個數字求反)
給定一個正整數,輸出其補碼。補碼策略是翻轉其二進制表示的位。 注意: 給定的整數保證在32位有符號整數的範圍內。 您可以假定整數二進制表示中沒有前導零位。示例1: 輸入: 5 輸出:2 說明:5的二進制表示爲1
原创 237. Delete Node in a Linked List
Writea function to delete a node (except the tail) in a singly linked list, givenonly access to that node. S
原创 461. Hamming Distance(漢明距離)
The Hammingdistance between two integers is the number of positions atwhich the corresponding bits are different. G
原创 7. Reverse Integer (翻轉一個整數)
Reverse digits of aninteger. Example1: x = 123, return 321 Example2: x = -123, return -321 給你一個整數,返後它倒序的數字 最
原创 412. Fizz Buzz
Write a program thatoutputs the string representation of numbers from 1 to n. But for multiples of threeit should ou
原创 第一章 布爾邏輯
引言,各種的數字設備,比如電腦,智能手機,或者網絡路由器,都是由一系列芯片組成的,芯片都是由相同的構造模塊製作而來的。基本的邏輯門就是就是最基礎的,模塊。 布爾門(Boolean gate):就是布爾函數的物理實現。 布爾代數:布
原创 561. Array Partition I (數組分組)
Given an array of 2n integers, your task is to groupthese integers into n pairsof integer, say (a1, b1), (a2, b2),
原创 橋接(Bridge)
橋接(Bridge) 橋接(Bridge)是用於把抽象化與實現化解耦,使得二者可以獨立變化。這種類型的設計模式屬於結構型模式,它通過提供抽象化和實現化之間的橋接結構,來實現二者的解耦。 將抽象與實現分離開來,使它們可以獨立變化。 介紹
原创 併發測試工具
併發測試工具 一、Postman Postman一款非常流行的API調試工具。其實,開發人員用的更多。因爲測試人員做接口測試會有更多選擇,例如Jmeter、soapUI等。不過,對於開發過程中去調試接口,Postman確實足夠的簡單方便,
原创 Java中的鎖
鎖 Lock Lock接口提供的synchronized所不具備的主要特性 特性 描述 嘗試非阻塞地獲取鎖 當前線程嘗試獲取鎖,如果這一時刻鎖沒有被其他線程獲取到,則成功獲取並持有鎖 能被中斷地獲取鎖 與synchronized不同,獲取
原创 ThreadPoolExecutor線程池
線程池 開發中幾乎所有的併發或者異步程序都可以使用線程池,它能帶來三個好處: 降低資源消耗。通過複用已存在的線程和降低線程關閉的次數來儘可能降低系統性能損耗; 提升系統響應速度。通過複用線程,省去創建線程的過程,因此整體上提升了系統的
原创 原子操作
Java中的原子基本類型有 AtomicBoolean AtomicInteger AtomicLong 常用操作有AtomicInteger的常用方法有: int addAndGet(int delta):以原子
原创 Java 內存模型
Java 內存模型 基礎知識 線程同步 同步是指程序中用於控制不同線程間操作發生相對順序的機制,共享內存模型中,同步必須顯式的控制,代碼中某個部分需要在線程之間互斥操作。 線程通信 線程之間交換信息稱之爲線程通信。線程通信的機制有兩種:
原创 併發實現原理
併發實現原理 volatile java內存模型中,volatile聲明的變量讓所有線程都是可見的而且看到時唯一的。 實現原理 修改volatile 變量時,所產生的彙編代碼會加上 Lock前綴,Lock前綴有兩個作用 把當前處理器
原创 用jvisualvm分析dump文件
用jvisualvm分析dump文件 最近有一個java服務的堆內存溢出,然後僵死了,在重啓服務之前用jmap命令生成了一份dump文件便於後面分析。 生成dump文件的命令: jmap -dump:format=b,file=20170