【決戰西二旗】|你真的懂快速排序?

本文首發於:

微信公眾號:後端技術指南針

持續乾貨 歡迎關注!

看似青銅實則王者

很多人提起快排和二分都覺得很容易的樣子,但是讓現場Code很多就翻車了,就算可以寫出個遞歸版本的代碼,但是對其中的複雜度分析、邊界條件的考慮、非遞歸改造、代碼優化等就無從下手,填鴨背誦基本上分分鐘就被面試官擺平了。

 

那年初識快速排序

快速排序Quicksort又稱劃分交換排序partition-exchange sort,簡稱快排,一種排序算法。最早由東尼·霍爾(C. A. R. Hoare)教授在1960年左右提出,在平均狀況下,排序n個項目要O(nlogn)次比較。

在最壞狀況下則需要O(n^2)次比較,但這種狀況並不常見。事實上,快速排序通常明顯比其他算法更快,因為它的內部循環可以在大部分的架構上很有效率地達成。

快速排序的核心思想

在計算機科學中,分治法(Divide&Conquer)是建基於多項分支遞歸的一種很重要的算法範式,快速排序是分治思想在排序問題上的典型應用。

所謂分治思想D&C就是把一個較大規模的問題拆分為若干小規模且相似的問題。再對小規模問題進行求解,最終合併所有小問題的解,從而形成原來大規模問題的解。

字面上的解釋是”分而治之”,這個技巧是很多高效算法的基礎,如排序算法(歸併排序、快速排序)、傅立恭弘=叶 恭弘變換(快速傅立恭弘=叶 恭弘變換)。

分治法中最重要的部分是循環遞歸的過程,每一層遞歸有三個具體步驟:

  • 分解:將原問題分解為若干個規模較小,相對獨立,與原問題形式相同的子問題。
  • 解決:若子問題規模較小且易於解決時,則直接解。否則,遞歸地解決各子問題。
  • 合併:將各子問題的解合併為原問題的解。

快速排序的發明者

查爾斯·安東尼·理查德·霍爾爵士(Sir Charles Antony Richard Hoare縮寫為C. A. R. Hoare,1934年1月11日-),昵稱為東尼·霍爾(Tony Hoare),生於大英帝國錫蘭可倫坡(今斯里蘭卡),英國計算機科學家,圖靈獎得主。

他設計了快速排序算法、霍爾邏輯、交談循序程式。在操作系統中,他提出哲學家就餐問題,併發明用來作為同步程序的監視器(Monitors)以解決這個問題。他同時證明了監視器與信號標(Semaphore)在邏輯上是等價的。

1980年獲頒圖靈獎、1982年成為英國皇家學會院士、2000年因為他在計算機科學與教育方面的傑出貢獻,獲得英國王室頒贈爵士頭銜、2011年獲頒約翰·馮諾依曼獎,現為牛津大學榮譽教授,並在劍橋微軟研究院擔任研究員。

快速排序的基本過程

快速排序使用分治法來把一個序列分為小於基準值和大於基準值的兩個子序列。

遞歸地排序兩個子序列,直至最小的子序列長度為0或者1,整個遞歸過程結束,詳細步驟為:

  • 挑選基準值: 從數列中挑出一個元素稱為基準pivot,選取基準值有數種具體方法,此選取方法對排序的時間性能有決定性影響。
  • 基準值分割: 重新排序數列,所有比基準值小的元素擺放在基準前面,所有比基準值大的元素擺在基準後面,與基準值相等的數可以到任何一邊,在這個分割結束之後,對基準值的排序就已經完成。
  • 遞歸子序列: 遞歸地將小於基準值元素的子序列和大於基準值元素的子序列排序,步驟同上兩步驟,遞歸終止條件是序列大小是0或1,因為此時該數列顯然已經有序。

快速排序的遞歸實現

    • 版本一 C實現
#include<stdio.h>

int a[9]={5,1,9,6,7,11,3,8,4};

void exchange(int *p,int *q){
    int temp=*p;
    *p=*q;
    *q=temp;
}

int quicksort(int left,int right){
    if(left>=right){
        return 0;
    }

    int i,j,temp;
    temp=a[left];
    i=left;
    j=right;

    while(i!=j){
        while(i<j&&a[j]>=temp){
            j--;
        }
        exchange(&a[i],&a[j]); 
        while(i<j&&a[i]<=temp){
            i++; 
        }
        exchange(&a[i],&a[j]);
    }
    quicksort(i+1,right);
    quicksort(left,i-1); 
}

int main(){
    quicksort(0,8);
    for(int i=0;i<=8;i++){
        printf("%d ",a[i]);
    }
}
    • 版本二 C++實現
 1 #include<iostream>
 2 using namespace std;
 3 
 4 template <typename T>
 5 void quick_sort_recursive(T arr[], int start, int end) {
 6     if (start >= end)
 7         return;
 8     T mid = arr[end];
 9     int left = start, right = end - 1;
10     //整個範圍內搜尋比樞紐值小或大的元素,然後左側元素與右側元素交換
11     while (left < right) {
12             //試圖在左側找到一個比樞紐元更大的元素
13         while (arr[left] < mid && left < right)
14             left++;
15                 //試圖在右側找到一個比樞紐元更小的元素
16         while (arr[right] >= mid && left < right)
17             right--;
18                 //交換元素
19         std::swap(arr[left], arr[right]);
20     }
21         //這一步很關鍵
22     if (arr[left] >= arr[end])
23         std::swap(arr[left], arr[end]);
24     else
25         left++;
26     quick_sort_recursive(arr, start, left - 1);
27     quick_sort_recursive(arr, left + 1, end);
28 }
29 
30 //模板化
31 template <typename T> 
32 void quick_sort(T arr[], int len) {
33     quick_sort_recursive(arr, 0, len - 1);
34 }
35 
36 int main()
37 {
38     int a[9]={5,1,9,6,7,11,3,8,4};
39     int len = sizeof(a)/sizeof(int);
40     quick_sort(a,len-1);
41     for(int i=0;i<len-1;i++)
42         cout<<a[i]<<endl;
43 }

兩個版本均可正確運行,但代碼有一點差異:

  • 版本一 使用雙指針交替從左(右)兩邊分別開始尋找大於基準值(小於基準值),然後與基準值交換,直到最後左右指針相遇。
  • 版本二 使用雙指針向中間集合,左指針遇到大於基準值時則停止,等待右指針,右指針遇到小於基準值時則停止,與左指針指向的元素交換,最後基準值放到合適位置。

過程說起來比較抽象,穩住別慌!靈魂畫手大白會畫圖來演示這兩個過程。

快速排序的遞歸演示

  • 版本一遞歸代碼的排序過程示意圖:

第一次遞歸循環為例:

步驟1: 選擇第一個元素為基準值pivot=a[left]=5,right指針指向尾部元素,此時先由right自右向左掃描直至遇到<5的元素,恰好right起步元素4<5,因此需要將4與5互換位置;

步驟2: 4與5互換位置之後,輪到left指針從左向右掃描,注意一下left的起步指針指向了由步驟1交換而來的4,新元素4不滿足停止條件,因此left由綠色虛箭頭4位置遊走到元素9的位置,此時left找到9>5,因此將此時left和right指向的元素互換,也就是元素5和元素9互換位置;

步驟3: 互換之後right指針繼續向左掃描,從藍色虛箭頭9位置遊走到3的位置,此時right發現3<5,因此將此時left和right指向的元素互換,也就是元素3和元素5互換位置;

步驟4: 互換之後left指針繼續向右掃描,從綠色虛箭頭3位置遊走到6的位置,此時left發現6>5,因此將此時left和right指向的元素互換,也就是元素6和元素5互換位置;

步驟5: 互換之後right指針繼續向左掃描,從藍色虛箭頭6位置一直遊走到與left指針相遇,此時二者均停留在了pivot=5的新位置上,且左右兩邊分成了兩個相對於pivot值的子序列;

循環結束:至此出現了以5為基準值的左右子序列,接下來就是對兩個子序列實施同樣的遞歸步驟。

第二次和第三次左子序列遞歸循環為例:

步驟1-1:選擇第一個元素為基準值pivot=a[left]=4,right指針指向尾部元素,此時先由right指針向左掃描,恰好起步元素3<4,因此將3和4互換;

步驟1-2:互換之後left指針從元素3開始向右掃描,一直遊走到與right指針相遇,此時本次循環停止,特別注意這種情況下可以看到基準值4隻有左子序列,無右子序列,這種情況是一種退化,就像冒泡排序每次循環都將基準值放置到最後,因此效率將退化為冒泡的O(n^2);

步驟1-3:選擇第一個元素為基準值pivot=a[left]=3,right指針指向尾部元素,此時先由right指針向左掃描,恰好起步元素1<3,因此將1和3互換;

步驟1-4:互換之後left指針從1開始向右掃描直到與right指針相遇,此時注意到pivot=3無右子序列且左子序列len=1,達到了遞歸循環的終止條件,此時可以認為由第一次循環產生的左子序列已經全部有序。

循環結束:至此左子序列已經排序完成,接下來對右子序列實施同樣的遞歸步驟,就不再演示了,聰明的你一定get到了。

特別注意:

以上過程中left和right指針在某個元素相遇,這種情況在代碼中是不會出現的,因為外層限制了i!=j,圖中之所以放到一起是為了直觀表達終止條件。

  • 版本二C++版本動畫演示:

 

分析一下:

個人覺得這個版本雖然同樣使用D&C思想但是更加簡潔,從動畫可以看到選擇pivot=a[end],然後左右指針分別從index=0和index=end-1向中間靠攏。

過程中掃描目標值並左右交換,再繼續向中間靠攏,直到相遇,此時再根據a[left]和a[right]以及pivot的值來進行合理置換,最終實現基於pivot的左右子序列形式。

腦補場景:

上述過程讓我覺得很像統帥命令左右兩路軍隊從兩翼會和,並且在會和過程中消滅敵人有生力量(認為是交換元素),直到兩路大軍會師。

此時再將統帥王座擺到正確的位置,此過程中沒有統帥王座的反覆變換,只有最終會師的位置,以王座位中心形成了左翼子序列和右翼子序列。

再重複相同的過程,直至完成大一統。

腦補不過癮 於是湊圖一張:

快速排序的多種版本

吃瓜時間:

印象中2017年初換工作的時候去CBD一家公司面試手寫快排,我就使用C++模板化的版本二實現的,但是面試官質疑說這不是快排,爭辯之下讓我們彼此都覺得對方很Low,於是很快就把我送出門SayGoodBye了^_^。

我想表達的意思是,雖然快排的遞歸版本是基於D&C實現的,但是由於pivot值的選擇不同、交換方式不同等諸多因素,造成了多種版本的遞歸代碼。

並且內層while循環裏面判斷>=還是>(即是否等於的問題),外層循環判斷本序列循環終止條件等寫法都會不同,因此在寫快排時切忌死記硬背,要不然邊界條件判斷不清楚很容易就死循環了。

看下上述我貼的兩個版本的代碼核心部分:

//版本一寫法
while(i!=j){
    while(i<j&&a[j]>=temp){
        j--;
    }
    exchange(&a[i],&a[j]); 
    while(i<j&&a[i]<=temp){
        i++; 
    }
    exchange(&a[i],&a[j]);
}

//版本二寫法
while (left < right) {
    while (arr[left] < mid && left < right)
        left++;
    while (arr[right] >= mid && left < right)
        right--;
    std::swap(arr[left], arr[right]);
}

覆蓋or交換:

代碼中首先將pivot的值引入局部變量保存下來,這樣就認為A[L]這個位置是個坑,可以被其他元素覆蓋,最終再將pivot的值填到最後的坑裡。

這種做法也沒有問題,因為你只要畫圖就可以看到,每次坑的位置是有相同元素的位置,也就是被備份了的元素。

個人感覺 與其叫坑不如叫備份,但是如果你代碼使用的是基於指針或者引用的swap,那麼就沒有坑的概念了。

這就是覆蓋和交換的區別,本文的例子都是swap實現的,因此沒有坑位被最後覆蓋一次的過程。

快速排序的迭代實現

所謂迭代實現就是非遞歸實現一般使用循環來實現,我們都知道遞歸的實現主要是藉助系統內的棧來實現的。

如果調用層級過深需要保存的臨時結果和關係會非常多,進而造成StackOverflow棧溢出。

Stack一般是系統分配空間有限內存連續速度很快,每個系統架構默認的棧大小不一樣,筆者在x86-CentOS7.x版本使用ulimit -s查看是8192Byte。

避免棧溢出的一種辦法是使用循環,以下為筆者驗證的使用STL的stack來實現的循環版本,代碼如下:

#include <stack>
#include <iostream>
using namespace std;

template<typename T>
void qsort(T lst[], int length) {
    std::stack<std::pair<int, int> > mystack;
    //將數組的首尾下標存儲 相當於第一輪循環
    mystack.push(make_pair(0, length - 1));

    while (!mystack.empty()) {
        //使用棧頂元素而後彈出
        std::pair<int,int> top = mystack.top();
        mystack.pop();

        //獲取當前需要處理的子序列的左右下標
        int i = top.first;
        int j = top.second;

        //選取基準值
        T pivot = lst[i];

        //使用覆蓋填坑法 而不是交換哦
        while (i < j) {
            while (i < j and lst[j] >= pivot) j--;
            lst[i] = lst[j];
            while (i < j and lst[i] <= pivot) i++;
            lst[j] = lst[i];
        }
        //注意這個基準值回填過程
        lst[i] = pivot;

        //向下一個子序列進發
        if (i > top.first) mystack.push(make_pair(top.first, i - 1));
        if (j < top.second) mystack.push(make_pair(j + 1, top.second));
    }
}

int main()
{
    int a[9]={5,1,9,6,7,11,3,8,4};
    int len = sizeof(a)/sizeof(int);
    qsort(a,len);
    for(int i=0;i<len-1;i++)
        cout<<a[i]<<endl;
}

下期精彩

由於篇幅原因,目前文章已經近6000字,因此筆者決定將快排算法的優化放到另外一篇文章中,不過可以提前預告一下會有哪些內容:

  • 基準值選擇對性能的影響
  • 基準值選擇的多種策略
  • 尾遞歸的概念原理和優勢
  • 基於尾遞歸實現快速排序
  • STL中sort函數的底層實現
  • glibc中快速排序的實現

參考資料

 

   本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理【其他文章推薦】

USB CONNECTOR掌控什麼技術要點? 帶您認識其相關發展及效能

※高價3c回收,收購空拍機,收購鏡頭,收購 MACBOOK-更多收購平台討論專區

※評比前十大台北網頁設計台北網站設計公司知名案例作品心得分享

收購3c瘋!各款手機、筆電、相機、平板,歡迎來詢價!

※智慧手機時代的來臨,RWD網頁設計已成為網頁設計推薦首選

從選車、造車到駕車 “AI+汽車”碰撞出多少種新可能?

摘要 【從選車、造車到駕車 “AI+汽車”碰撞出多少種新可能?】時值世界人工智能大會前夕,記者走進已經被人工智能所深刻改造的汽車行業,為你揭秘“AI+製造”將會為汽車行業產業上下游帶來哪些改變。(新華網)

  時值世界人工智能大會前夕,記者走進已經被人工智能所深刻改造的汽車行業,為你揭秘“AI+製造”將會為汽車行業產業上下游帶來哪些改變。

  應用一:智能客服。使用AI技術:語音識別、自然語言處理

  在用戶運營環節,過去一個客服只能對應幾十個用戶,有了智能助手后,運營人員不僅對應的用戶數量翻倍,而且還能跨車型服務,實現了人機互相協作的局面。

  “未來利用AI技術還可以進一步優化用戶畫像,更好地打通線上線下的用戶數據。”上汽大通数字技術及轉型中心高級產品經理邵鑫說,用戶什麼時候去過哪家4S店,在哪個場景逗留時間比較長,和銷售人員的對話記錄,線上曾經和智能助手做過哪些溝通,都可以進行完整的數據打通,形成價值鏈閉環,使用AI技術可以不斷地豐富用戶畫像,更精細地服務用戶。

  應用二:智能選配。使用AI技術:自然語言處理、知識圖譜

  在上汽大通自主研發、不斷迭代的智能選配平台“蜘蛛智選”上,已經有多個車型、單車型多達60多項個性化選擇供消費者定製。消費者可以在線上選擇組合心儀車型的各類配置及功能,座椅顏色、前格柵、中控屏、主動安全功能等都可以定製,PC端、手機端、店面多觸點覆蓋,線上線下無縫打通的智能選車體驗。

  “利用知識圖譜這一技術,我們其實針對不同用戶會進行非常個性化的推薦。”邵鑫說,比如說用戶過去在運營平台留下過地域信息,“蜘蛛智選”就會據此標籤進行一些相應的車輛配置推薦。例如,就輪胎而言,對南方用戶會推四季胎,對北方用戶推薦購買雪地胎作為備胎。

  應用三:燈塔工廠。使用AI技術:圖像識別、自學習等。

  走進上汽大通的“燈塔工廠”,藉助基於網絡物理系統、物聯網、雲計算以及人工智能技術的綜合性製造技術,例如行業領先的工程數據智能分析、数字化生產技術、数字化質量管理系統和数字化供應鏈等,驅動生產線的智能化轉型,令生產更加透明、高效和智能。

  “我們利用AI圖像識別技術實現生產防錯與糾正,例如:輪胎機運鏈上線時,發現和用戶選配需求不一致或者輪胎安裝過程中沒有按照設定的安裝定位參數安裝,就會向製造監控系統預警並驅動机械臂進行相應的替換或安裝調整。”邵鑫說,此外在焊接過程中,也會結合大數據分析+機器學習來提升焊接質量。“通過不斷的自我學習,智能化調整焊接參數,最終消除缺陷焊點”。

  麥肯錫全球董事合伙人、中國區汽車與先進製造業諮詢業務領導人王平表示,服務全球和國內車企的經驗表明,数字化結合物聯網和自動化技術可大幅提升收入,縮短產品開發周期10%-20%,提高勞動生產效率20-30%,減少庫存30%。70%以上的後台工作可實現自動化。

  從宏觀面上看,數據显示,上海智能製造平均生產效率提升50%以上,最高提高3.8倍以上,運營成本平均降低30%左右,最高降低79.4%。目前,上海已成為國內最大的智能製造系統解決方案供應商輸出地之一。

  應用四:無人駕駛。使用AI技術:圖像識別、自動控制……

  “未來中國很可能成為全球最大的無人駕駛市場。”麥肯錫未來出行研究中心報告稱,由於本土及跨國公司的蓬勃發展,中國現已成為全球最大的車輛及出行服務市場,無人駕駛若能在中國落地生根,前景將十分廣闊。

  王平認為,目前無人駕駛技術還在快速進步之中,但離技術成熟到應用還有很長的路。預計2026年之後,無人駕駛技術在全生命周期成本上可能取得優勢。

  “人工智能對汽車行業的賦能,是一個逐漸深入的過程,現階段應用的深度也不同。”上汽大通首席数字官吳鋼說,汽車行業的智能化總體而言是兩個大的方向:一是把汽車打造成一個智能產品,也就是無人駕駛等;另一個是實現汽車製造和銷售等環節的智能化,提升效率。

(文章來源:新華網

(責任編輯:DF353)

【其他文章推薦】

地板施工造成其他裝潢有瑕疵該如何補救?

※想改變客廳裝潢風格嗎? 馬賽克拼貼打造溫馨鄉村風,教你如何運用馬賽克瓷磚自行DIY創作

※好評熱賣,復刻家具推薦首選口袋名單

※【找人才】舞台架設/燈光音響專業技術人員,福利佳,薪可議

※推薦竹東裝潢老師傅統包團隊,裝潢、修繕一次搞定!!

券商着手修改兩融合同 平倉線設置成關鍵

摘要 【券商着手修改兩融合同 平倉線設置成關鍵】日前公布的《融資融券交易實施細則》擴大了擔保物範圍和標的證券範圍,並取消了“平倉線”不得低於130%的統一限制。中國證券報記者獲悉,當前已有券商着手修改兩融合同,但普遍傾向於保持原來的維持擔保比例不變。(中國證券報)

  日前公布的《融資融券交易實施細則》擴大了擔保物範圍和標的證券範圍,並取消了“平倉線”不得低於130%的統一限制。中國證券報記者獲悉,當前已有券商着手修改兩融合同,但普遍傾向於保持原來的維持擔保比例不變。

  業內人士認為,在當前競爭激烈的市場環境下,針對不同標的、不同客戶,設置相應的“平倉線”成為各家證券公司開發兩融客戶的重要手段。不過,在實際操作中,券商的風控措施需及時跟進。

  降低個股風險

  中國證券報記者獲悉,有券商已根據修訂后的融資融券交易實施細則着手修改兩融合同和相關業務規則。有券商人士告訴記者,兩融鬆綁,擴大了一些標的,是比較有利的。其他修訂條款並無本質變化,兩融業務的維持擔保比例由總部統一制定。雖然有券商在改合同和業務規則,但這屬於個別現象,目前普遍傾向於保持原來的維持擔保比例不變。

  “這有助於緩解市場在某一時期出現賣壓過於集中的問題,在一定程度上可有效避免再次出現2015年‘連環爆倉’現象,是‘逆周期’調節、增加證券公司兩融業務運作靈活性的又一重要舉措。”談及細則中擬取消平倉線不得低於130%,根據實際情況與客戶自主約定最低維持擔保比例等條款,華東某券商信用業務負責人張力(化名)表示。

  張力認為,在當前各家證券公司相互競爭的市場環境下,針對不同標的、不同客戶,設置相應的平倉線成為各家證券公司開發兩融客戶的重要手段。

  不過,取消平倉線統一限制不可過度解讀。中國證券報記者了解到,在實際操作中,目前各家券商強制平倉線存在彈性空間。譬如,北京某券商將維持擔保比例設定四條線,即提取線(300%)、警戒線(145%)、追保線(130%)及最低線(110%),並在系統中設置。其兩融業務部門負責融資融券業務的逐日盯市,根據警戒線、追保線、最低線,對客戶信用賬戶資產負債進行監控,根據不同情況採取相應措施。

  南方某券商信用業務人士劉濤(化名)表示,在參與資金總體變化不大的前提下,擴大兩融標的範圍有助於降低單隻兩融標的的集中度,進而降低個股風險。此外,擴大擔保物範圍增強了客戶補充擔保物的靈活性,在一定程度上也將減少證券公司兩融業務面臨的客戶違約風險。

  風控體系需及時跟進

  兩融業務鬆綁也對券商風控提出新的要求。“未來券商兩融業務應對複雜市場變化帶來的風險,保障業務穩健發展,均需要依賴全面風險管理,需要券商構築更完善的風險控制和資產評估體系。”華泰證券指出。

  中山證券首席經濟學家李湛表示,證券公司可以自行評估客戶的質量,設置符合客戶風險偏好需求的最低維持擔保比例,這有利於解決資金供給與需求方信息不對稱的問題。風險識別與監控下沉至證券公司,即通過融資融券風險由證券公司自擔的方式,促進融資融券業務發展。

  國盛證券認為,新規並非一味放鬆,監管也加強了對股票質押業務、衍生品等高風險業務的管理,嚴守風險底線。

  券商業績有望提升

  華泰證券認為,此次兩融交易機制的優化和標的擴容為兩融業務有序拓展奠定了基礎。制度優化和標的擴容將直接激活兩融業務需求,增加券商收入。同時,兩融業務上升也有望提升市場交易景氣度,從而助力券商經紀業務收入上升。

  長城證券指出,根據2018年證券公司營收結構的情況,目前融資融券業務的貢獻度為9.28%,在融資融券實施細則調整的幾年中(2014年、2015年、2016年),兩融業務在證券公司營收中呈現不斷髮力的狀態。在金融供給側結構性改革的背景之下,證券公司的重資產業務(包含資本中介及自營業務)在證券公司業績中的帶動力將不斷增強。維持擔保比例的市場化、實質性轉變,預計將成為2019年後半年證券公司業績的重要發力點。

(文章來源:中國證券報)

(責任編輯:DF380)

【其他文章推薦】

柚木地板是什麼,其材料規格及適合施作環境?

※裝潢省錢妙招,家具訂製推薦達人,教您省下不必要的裝潢

※找尋專業規劃婚宴場所、尾牙活動、舞台背景等會場佈置專家在哪裡?

※住家安全首選「隱形鐵窗」,KO傳統老舊鐵窗!

※知名設計師專業沙發訂做,全省沙發工廠推薦一覽表

監管政策一周三連發 “支持券商深度參與交易”如何理解?

  中證金融公司整體下調轉融資費率、滬深交易所修訂《融資融券交易實施細則》大幅優化兩融交易機制、證監會就修訂《證券公司風險控制指標計算標準》(下稱《風控計算標準》)公開徵求意見……近一周內,防風險、穩市場、提升信心的政策接連發布。

  證監會官方網站發布的信息在就《風控計算標準》修訂進行介紹時,明確提出“支持證券公司遵循價值投資理念,深度參與市場交易”。這句話應當如何理解?背後有何深意?

  券商分析人士認為,放鬆風控計算標準的重要目的之一,是進一步支持券商遵循價值投資理念,加大對權益類資產的長期配置力度。目前市場交易比較低迷,需要監管引導長期資金入市,來彌補短期資金流出的壓力,具有進行逆周期調節的政策意圖。適當放鬆風控指標的計算標準釋放了積極信號,對資本市場和證券公司起到提振的作用,也有利於提升市場信心。但支持券商深度參與交易並不意味着放鬆風險管理,證券公司近年來非常重視防控風險,即使完全放開管控,證券公司也會量力而行,不會盲目做大業務規模。

  2016年,證監會修訂發布《證券公司風險控制指標管理辦法》及配套規則,完善了證券公司以凈資本和流動性為核心的風控指標體系。此次修訂風控指標計算標準主要包括了四方面內容:將券商投資成分股、權益類指數基金產品的市場風險資本準備計算標準分別下調至10%、5%;完善了股票質押、私募資產管理等業務的指標計算標準;明確了新業務、新產品的風控指標計算標準,確保風險全覆蓋;對連續三年分類評價為A類AA級及以上的證券公司,將風險資本準備調整係數設為0.5。

  川財證券研究所所長陳靂接受採訪表示,證監會兩融標的擴容及細則修訂,跟本次風控指標計算標準修訂有承接關係,此次《風控計算標準》修訂主要是結合新的形勢變化,通過對部分計算指標作出放寬調整,讓證券公司能有更多的市場業務空間,同時也有望給市場帶來增量資金。

  北京某頭部券商非銀行分析師透露,早在今年年初,監管層就已着手對修訂券商風控指標計算標準進行論證,目的是進一步支持券商遵循價值投資理念,加大對權益類資產的長期配置力度。目前市場交易比較低迷,換手率已經降到了2018年12月的水平,需要監管引導長期資金入市,來彌補短期資金流出的壓力,“這實際上就是在進行逆周期調節”。

  “所謂支持‘深度’參與市場交易,我認為主要是針對券商自營盤中權益類資產越來越低的狀況提出的。2015年以來,券商自營盤中權益類持倉佔比持續走低,到2018年時有些券商權益類投資佔比已經不到15%,放寬風控計算標準,能夠適當提升券商自營盤中權益類資金的佔比。”這位分析師說。

  深圳某中型券商非銀行業分析師也表示,此前國內外風險事件頻發影響到了市場情緒,投資者風險偏好降低,導致市場交易清淡,股市較低迷。此次風險標準調整適當放寬了成分股和權益類指數基金、政策性金融債等投資的風險準備限制,意味着券商“深度參與”的方向既包括新落地的科創板市場和此前受風險事件影響的A股主板市場,也包括債券市場。

  在東興證券研究所非銀首席分析師劉嘉瑋看來,支持券商參與交易是一個積極信號,但其前提並不是放鬆風險管理。他表示,經過近年來的市場考驗,證券公司的風控體系相比以往已更加成熟完善,現在進行風控指標計算標準的調整是比較好的時點。同時,目前證券公司心態比較保守,自營投資中權益投資佔比較小,放鬆券商投資部分權益類投資品的風險資本計算標準,就是希望券商能夠主動的增加權益類的倉位,這同時也是呵護市場的一個表現。

  “受政策帶動,券商對權益投資的積極性可能會有所提高,但即使政策上給予了一些實惠,券商也不會盲目加大這部分的資產配置和投入,具體情況要視各機構的投資計劃和風控能力而定。”北京某中型券商非銀行業分析師也在接受採訪時作出了類似的判斷。

  證監會此次《風控計算標準》修訂還強化了差異化監管安排。分析人士普遍認為,對行業發展而言,這意味着規模領先的頭部券商將迎來更多利好;對評級較低的券商,監管標準還是保持一貫嚴格甚至更加嚴格。市場預期,未來監管可能進一步細化政策,頭部、高評級的券商和小券商分化會更加明顯。

(文章來源:上海證券報)

(責任編輯:DF380)

【其他文章推薦】

※了解海島型木地板是否會有潮濕變形疑慮?

※教你如何接案,展場設計及搭建舞台設計報價之收費方式與指南大公開!

※買沙發!就找專業客製化沙發推薦工廠,帶您享受舒適兼具美觀的居家生活!

※針對一般住家各種奇怪漏水問題,竹北水電東通水管修復作業案例揭密!

※更多客製化沙發,古典沙發推薦設計作品,皆在"裝潢大小事"平台分享!

華泰聯合證券董事長劉曉丹:純粹大吃小的同質併購沒有意義

  8月11日,由證券時報社主辦的“第十三屆中國上市公司價值論壇暨最受上市公司尊敬投行論壇”在深圳舉行。華泰聯合證券董事長劉曉丹出席論壇並做主題演講。劉曉丹表示,券業是高β值的行業,與資本市場密切相關,而市場變化常常是在悄然無息地進行的,2019年的市場變化有可能改寫行業的發展態勢。

  她在演講中講到,科創板的市場化改革、對外開放、技術變革都將對證券行業帶來衝擊;“內生+外延”是金融巨頭成長的必經之路。內生成長戰略需要徹底的改革方能轉型,公司戰略、組織體系、人才戰略這三要素決定誰是最後的變革贏家。

  而從外延成長戰略看,併購是最高層次的競爭,是優勝劣汰最慘烈的一種方式。不同於上一輪綜合治理的併購,純粹大吃小的同質併購沒有意義,很可能是負協同。差異化能力互補的併購有意義,因此更優質證券公司甚至頭部企業之間的整合才有意義,但在中國又是很難發生的。

  券商中國記者整理出五大要點,以饗讀者。

  1、科創板會倒逼存量改革,市場化配置力量加強,投行的價值鏈在重構。

  原來依賴牌照的通道價值在消退,如何識別、發現、提升客戶的價值,在全球範圍內整合資源,為客戶提供有價值的服務,成為投行的核心競爭力。目前投行面對三大類客戶:企業、零售、機構,投行提供基於牌照的同質化服務居多,標準化的服務陷於紅海價格戰是必然趨勢,而關於企業客戶的定價銷售、零售客戶的財富管理、機構客戶的交易服務等核心能力遠遠不夠,整個行業面臨轉型,而能力不足成為最大掣肘。

  2、外資的進入可能會給行業某些領域帶來降維打擊。

  貿易爭端會倒逼改革,加速對外開放,當下很多外資行開始拿牌照,外資的資產管理公司也在湧入中國,外資對中國市場的開放有着很大的興趣。同時,監管機構牌照管理放開,內資的牌照申請也可以開始了。外資投行進入中國對狹義的投行發行業務短期衝擊不大,但他們整合全球資源以及多年成熟的客戶服務理念、風控體系,在FICC、財富管理、交易衍生品以及跨境業務上可能會對行業產生降維打擊。鯰魚進來了,溫水煮青蛙、千人一面的行業格局將被打破。

  3、技術變革將改變行業生態。

  回看過往,證券行業取得了一定的進步,但剛才披露的數據显示,2018年證券行業的利潤值大約是十年前的不到2倍,ROE也沒有很大的提升,這意味着行業整體的服務能力在過去的十年中並沒有很大的進步。過去十年股市一直在動蕩中,券業在政策的變化中來回折返跑,證券行業的進步相比其他行業“中國速度”是比較慢的,更無法與互聯網等行業比。這值得我們反思。

  技術變革一直是影響金融業發展的關鍵要素。在美國,因為監管的一些要求,金融科技的主戰場反倒是傳統的金融機構等,不像中國上半場是由新興互聯網公司主導,而下半場,中國傳統的金融機構攜着大量的數據和場景開始入局這場技術變革。技術若成為驅動業務發展的力量,對公司的管理架構、組織體系都要做調整,否則各種數據和場景是割裂的,金融創新事實上就是“死”的,在這方面傳統的金融機構無論是理念認識以及行動做得還遠遠不夠。如果傳統的金融機構不能徹底的轉型和改革,未來行業的顛覆者或許並不在行業內。

  4、轉型時期內生成長依賴“戰略、組織體系、人才”三個維度的變革,否則轉型只是口號。

  任何一個行業,無論是券業或者其他的行業,一般成長策略都是“內生+外延”雙輪驅動。戰略要有長期性和前瞻性,並且要保持一定的定力,一定要考慮未來至少五年,但券商的治理結構決定了很少有人能考慮五年的事情,更多的公司在講戰略時,仍然是政策驅動,而不是市場驅動。2012年我接手華泰聯合的時候,我說需要至少五年的時間完成大投行戰略的調整和改革,調整組織結構和人才隊伍,甚至可以忍受短期的波動。真正的戰略一定是市場驅動的,一定是看清本質的,一定是長期的,但問題是,不是市場化產生的券業高管有多少的從容和自信在今天決策的時候可以考慮未來五年?

  戰略定了,就要排兵布陣,即支撐戰略落地的組織體系。一個沒有組織變革能力的公司是沒有辦法面對未來的,互聯網巨頭組織龐大,但隔兩三年就會根據市場變化和競爭態勢來調整組織結構。券商組織結構一方面受監管制約,另一方面受國有體制制約,可以挪人不能拆廟。大部分券商的部門全部都是按照傳統牌照產品來分的,而不是以客戶為導向劃分的,而且基本上都是多年不調整,其實是很難適應市場變化的。

  券業是高度依賴人才的行業,而且是要對市場的瞬息萬變做出正確反應的市場化人才,但我們這個行業人才結構性失衡,缺乏長效的激勵機制。傳統價值鏈上人才嚴重過剩,而只會寫招股書或只會動員人炒股收傭金是一定會被淘汰的。但面向未來、懂市場的人才又急缺,整個券業的領導年齡層也比較老化,在高管層面,大部分公司也無法真正實現市場化用人和優勝劣汰,大量對行業缺乏理解的人又常常承擔決策者的使命,理想主義者在這行業大都悲壯前行,公司治理的市場化改革舉步維艱,國有企業管資本的改革目標在券業更難實現。

  5、純粹大吃小的同質併購沒有意義,很可能是負協同。差異化能力互補的併購有意義,因此更優質證券公司甚至頭部企業之間的整合才有意義,但在中國又是很難發生的。

  金融一直是併購比較活躍的領域,其周期性以及高風險性常常是驅動併購發生的原因。中國證券行業也有併購,在上一輪綜合治理的併購中,中信、華泰都是贏家,而且華泰選擇了最艱難的整合而不僅是收購,並且整合的非常成功。但是這一輪併購跟上一輪綜合治理不一樣,上一輪是跑馬圈地、做大地盤,現在證券行業在轉型,如果做同質化的併購很可能是負協同,要做能力差異化互補的併購。但放眼望去,大部分的證券公司長得很像,純粹大吃小的併購協同並不大,現在的併購是要找能力差異化互補的公司,甚至是頭部企業的併購。國外的大的金融巨頭無一不是經歷了一次或多次的併購成長起來的,但在中國因為地方保護,因為人事管轄權,頭部企業之間的大併購很難發生。

  未來資本市場在經濟轉型中承擔越來越重要的使命,而建設一流的投資銀行,掌握定價權,與境外頂尖投行同場競技也成為了當務之急。但從現實來看,中國投資銀行與境外成熟市場還有二三十年的差距,從內生、外延成長兩種策略來看,中國券業的未來成長之路都充滿挑戰,但我始終相信若能在公司治理和體制上做進一步的市場化改革,擁抱新技術,吸引全世界一流的人才,按照中國速度,彌補差距一定不用二十年的時間。也許我們70后的這代從業人員看不到世界一流投行的夢想實現,但我們可以當鋪路石,讓80后、90后的年輕人去實現。真正的勇士都是在看清生活的本質之後依然熱愛生活,勇敢前行,因為未來是屬於年輕人的!

(文章來源:券商中國)

(責任編輯:DF078)

【其他文章推薦】

實木地板、海島型地板、耐磨地板怎麼挑? 木地板三倍價差的秘密!!

※想知道大型演唱會、知名劇場的舞台設計是由哪位設計師一手操刀嗎?

※中古屋大改造,分享台中室內設計公司隔間重新規劃,擴大實用空間!

※了解海島型木地板是否會有潮濕變形疑慮?

※想要打造簡約、淡雅兼且收納空間的小資房,台中室內設計推薦哪一家?

警惕應收賬款攀升的科創企業

  “我們過去調研時,發現好的科技公司應收賬款都比較少。對於有應收賬款的科技公司,我們一般是不會碰的。”格雷投資總經理張可興針對近日貝斯達終止上市審核事件在接受《證券日報》記者採訪時表示。

  據記者了解,2016年至2018年期末,貝斯達應收款項賬麵價值分別為6.34億元、7.36億元和8.08億元,占當期資產總額的比例分別為52.1%、49.08%和51.27%。正是因為其應收賬款持續攀升等原因,貝斯達在申請階段就備受關注。此次終止上市審核,也與其應收賬款有着部分原因。

  受應收賬款困擾的科創板公司不僅僅只有貝斯達,已經申請上市受理的北京華峰測控技術股有限公司也有較高的應收賬款。2016年至2019年一季度,其應收賬款餘額分別為0.42億元、0.43億元、0.35億元和0.64億元,占各期末流動資產比例分別為29.09%、22.94%、14.73%和17.81%;同樣已經被受理了上市申請的瀋陽芯源微电子設備股份有限公司,也因應收賬款和存貨在過去幾年連續增長而遭廣泛關注。即使已經成功上市的杭可科技與容百科技等也因應收賬款在過去幾年的攀升,受到了媒體質疑。其他多家科創板上市公司在招股說明書中也都提到過存在應收賬款無法收回的風險。

  東北證券研究總監付立春告訴《證券日報》記者,“應收賬款是重要的財務指標科目,極容易被人為所左右,形成財務造假”。

  一般來說,企業形成應收賬款的直接原因,是賒銷。通過這種方式可以增加銷售並且減少庫存。而企業通過虛調應收賬款和改變應收賬款計提比例等手段,可以實現對企業利潤報表的粉飾。早在2016年欣泰電氣因就因虛構應收賬款回收等原因成為了A股創業板第一家退市公司,也是中國資本市場第一家因欺詐發行而退市的公司。

  記者根據數據統計,除晶晨股份、杭可科技與心脈醫療相關數據未显示,科創板其餘25家公司應收賬款平均周轉率為5.9,平均周轉天數為102.95天。

  “從財務的角度看,應該高度關注企業的應收賬款餘額以及應收賬款占主營業務收入的比重。”某券商分析人士告訴《證券日報》記者,“但是要具體問題要具體分析,如果短期內增加應收賬款是企業的一種競爭手段,也不能說明企業有問題”。

  付立春也向記者表示,“要綜合考慮科創板企業的實際情況,不能僅依賴應收賬款數額和所佔比重等一兩項指標進行判斷”。

(文章來源:證券日報)

(責任編輯:DF380)

【其他文章推薦】

※新屋購入,尋找台中室內設計師?是否可先免費估價丈量?

※分享木質地板DIY自行施工教學影片

柚木地板是什麼,其材料規格及適合施作環境?

※門外漢也要知道的超耐磨木地板祕辛?

木地板哪有幾種款式?該如何選購適合的材質呢?

含植物油食品恐藏致癌物 台擬納管全亞洲首例

摘錄自2019年11月21日中央社台北報導

近年國際間在含植物油的抹醬、餅乾、巧克力等食品中驗出「縮水甘油」,是人體可能致癌物,引發各國關注。食藥署擬率亞洲之先訂定限量標準,新制最快2020年上半年實施。

食藥署食品組科長廖家鼎表示,縮水甘油是近幾年才發現新興加工污染物,主要是植物油經過高溫、脫臭、脫酸、脫色的過程中產生的有害物質,以棕櫚油含量較高,食用後雖然不會造成立即危害,但長期下來仍會增加致癌風險。

目前美國、日本都還未訂定相關規範,香港雖檢驗許多產品,但也未訂出相關規範,僅有一向規定較嚴格的歐盟率先訂出規定。 林口長庚醫院臨床毒物中心主任顏宗海表示,相關資料顯示,植物油從「毛油」到「精煉油」的處理過程中,只要處理溫度超過攝氏200度就可能形成縮水甘油,且致癌性為2A級,盼藉由訂定標準強化食品業者把關,減少致癌污染物生成。

【其他文章推薦】

※專業機台儀器租賃服務及相關銷售資訊

※如何利用一般常見的「L型資料夾」達到廣告宣傳效果?

※哪裡買的到省力省空間,方便攜帶的購物推車?

飲水機皆有含淨水功能嗎?

※無毒橡膠墊片哪裡買的到?

※錢要花在刀口上,選購隔熱紙前必須知道的九件事 !

國軍輸油管老舊 漏油污染吉安溪

摘錄自2019年11月20日聯合報、華視報導

花蓮縣吉安鄉靠近海邊的榮光村充滿濃濃汽油味,經查是軍方的輸油管閘閥墊圈老舊,導致油滲漏流到吉安溪裡,軍方緊急出動90多人次兵力到現場搶救,用兩道攔油網攔截,目前已控制範圍。

陸軍第二地區支援指揮部上校劉政谷表示,軍方主動發現輸油管有滲漏現象,第一時間已關閉管線修復,立即放置攔油網、吸油棉、空壓機及油水分離槽等設備,中油也支援油罐車,控制防治污染產生。估計有7000多加侖的航空用油漏油。

劉政谷說,初步調查應是輸油管閘閥線圈老舊,才會造成滲漏。由於吉安溪裡有不少魚蝦,軍方的漏油是否會造成環境生態污染,環保局將會派人前往做水質鑑定。

【其他文章推薦】

※何謂NBR手套,其特性及功能為何?

※選購空壓機需注意八大事項 !

※一條龍物流瞄準台中港倉儲,未來商機 !

※飲用桶裝水到底安不安全? 破解錯誤迷思!

新北市轉軸新北市探針選用參考標準?

為氣候變遷、台商迴流做準備 水利署掛保證:明年春節前不缺水

環境資訊中心記者孫文臨報導

花蓮縣吉安鄉靠近海邊的榮光村充滿濃濃汽油味,經查是軍方的輸油管閘閥墊圈老舊,導致油滲漏流到吉安溪裡,軍方緊急出動90多人次兵力到現場搶救,用兩道攔油網攔截,目前已控制範圍。

陸軍第二地區支援指揮部上校劉政谷表示,軍方主動發現輸油管有滲漏現象,第一時間已關閉管線修復,立即放置攔油網、吸油棉、空壓機及油水分離槽等設備,中油也支援油罐車,控制防治污染產生。估計有7000多加侖的航空用油漏油。

劉政谷說,初步調查應是輸油管閘閥線圈老舊,才會造成滲漏。由於吉安溪裡有不少魚蝦,軍方的漏油是否會造成環境生態污染,環保局將會派人前往做水質鑑定。

【其他文章推薦】

※幫你考照過關,堆高機裝卸操作教學影片大公開 !

※高效率洗滌塔活性碳設備,能去除多少有機溶劑?

※飲用桶裝水到底安不安全? 破解錯誤迷思!

※家庭、朋友聚會,享受輕鬆烤肉必備外燴烤爐NO.1

新北市探針業者,哪家可以精準車製?

※十大封口機人氣排行榜-烘焙必備幫手!

日本國土百萬年的惡夢 每日數百噸的福島輻射污染水

文:宋瑞文(媽媽監督核電廠聯盟特約撰述)

香港自6月爆發反送中抗爭以來,估計警方先後已施放近萬枚催淚彈。週六(23日)因此有香港民眾在九龍塘發起遊行,要求港府停止使用催淚彈。

遊行發起人Stephanie表示,希望社會關注催淚彈進入生活和校園對孩子健康帶來的影響。有家長表示,港府多次拒絕公開催淚彈成分,讓他們更擔心催淚彈的殘餘物會影響孩童健康。

Stephanie說,九龍塘是學區,因此選擇在此遊行,希望社會將焦點放在校園上。她表示,1歲半的兒子皮膚敏感,醫生說要減少到曾施放催淚彈的地方;女兒在屯門上學,早前屯門出現不明氣體時,雙眼也感到不適長達一周。

由40多個團體組成的「全港反送中聯席」日前曾召開記者會指控警方發射的催淚彈,會產生致癌物「二噁英」。若吸入過量的「二噁英」,對人體皮膚、肌肉、生殖系統、荷爾蒙及氣管都會造成傷害。一名在前線採訪的記者也在臉書發文稱,自己因此患上「氯痤瘡」。

不過,香港警方在記者上被問及催淚彈會釋出二噁英甚至導致氯痤瘡時表示,對於有人將催淚彈與二噁英扯上關係感到「摸不著頭腦」,也不曾聽聞同樣在一線的員警有人患上氯痤瘡。

【其他文章推薦】

示波器探測執行效能最佳化的8大秘訣

※專業客製化禮物、贈品設計,辦公用品常見【L夾】搖身一變大受好評!!

冷熱飲水機桌上型飲水機辦公室飲水機直立式飲水機,選購技巧大公開!!

※哪一些是橡膠加工製品?又區分什麼用途

※如何知道自已的電腦cpu支不支持AVX指令集?

※票選推薦煮婦最愛手壓封口機,省荷包不犧牲品質