本發明涉及一種基于大數據的自行車共享系統智能篩選的實現方法,屬于計算機編程語言技術領域。
背景技術:
隨著社會的不斷發展,城市經濟的騰達,人們對于交通領域的重視程度日益上漲,與此同時,交通安全、道路堵塞、尾氣排放、綠色出行等話題也漸漸成為了人們關注的焦點。隨之而來的便是近年來公共自行車租賃行業的崛起,不僅僅有政府支持的傳統的市民公共自行車服務系統,更有如今摩拜單車,ofo等新興企業引領公共自行車租賃的風潮,但是隨著人們出行需求的不斷增加,需求分布不均,局部地區供不應求的問題顯現出來。為了滿足市民出行需求,搶占市場的份額,這些企業選擇了加大自行車的生產,通過提高自行車的數目以滿足市民們日益上漲的出行需求。雖然在短期內起到了成效,企業們也打出了“隨時租,隨時停”等口號,但是通過數量的堆積是無法從根本解決問題,自行車的大量生產一方面提高了運營成本,同時也對后期自行車的維護和防丟失造成了很大的麻煩。此外,因為沒有指定的停車點,自行車的亂停亂放現象不可避免,不僅對交通管理造成麻煩,更會成為讓一些不法分子有機可乘進行偷竊活動。
技術實現要素:
本發明目的在于針對如今市場中企業為了滿足市民日益上漲的出行需求增大自行車產量導致的運營成本過高,易丟失,增大交通管理難度的問題,提出了一種基于大數據的自行車共享系統智能篩選的實現方法,該方法解決如今市場中的傳統的公共自行車租賃軟件系統自行車利用率低,供需關系緊張,自行車管理繁雜,運營成本高等問題,同時致力于將用戶借車變得智能化,系統體驗顯得人性化,自行車利用呈現碎片化,體現“共享經濟”的理念。具體技術方案包括:自行車共享系統將用戶輸入的借車時間段以區間的形式表示;以區間取交集的方法得到任意用戶與車主設立時間段的重合時間段;最后返回重合的時間段,并根據用戶的要求進行排序。根據此篩選算法,不僅緩解了傳統公共自行車租賃系統巨額運營成本,低普及率,低利用率的問題,同時實現了隨時隨地借車的功能,令借車更加快捷與智能,改善了用戶體驗,體現了“物盡其用”的綠色消費觀,貫徹了“共享經濟”的先進理念,順應了時代的潮流。該方法實現了時間篩選,達到了用戶借車智能化,客戶端體驗人性化,自行車使用碎片化的目的。其主要實現的功能包括:1)讀入用戶與車主輸入的使用自行車與出借自行車的時間,并以區間模式保存在兩個數組中;2)去兩個數組中的區間進行遍歷并兩兩求交集,并作為結束的返回值返回。返回值即為任意用戶與車主分別設置的兩個時間段的重合時間。
本發明解決其技術問題所采取的技術方案是:一種基于大數據的自行車共享系統智能篩選的實現方法,包括聲明數組,初始化數據,求解重合時間段,根據條件返回結果,所述的聲明數組是指算法預先申明兩組空的數組,用于存放用戶與車主在自行車共享系統客戶端中輸入的時間;所述的初始化數據是指算法接收到用戶和車主在客戶端輸入的時間;所述的求解重合時間段是指在初始化數據的基礎上,對于兩者設立的時間區間進行求交集的數學操作,所得的新的集合視為結果;所述的根據條件返回結果指的是:算法根據用戶與車主設置的篩選要求進行篩選與排序,最后作為結果返回,該方法包括如下步驟:
步驟1:開發員在編寫時間篩選算法的時候預先申明兩組空數組,分別用于存放借車的用戶使用自行車與車主可借自行車時間段的端點數據。
步驟2:用戶打開手機客戶端,點擊時間篩選的按鍵,根據要求輸入借用自行車的時間段,算法通過代碼的內部類自動獲取用戶時間段區間,并且利用預先申明的空數組保存用戶輸入的數據。
步驟3:算法將用戶輸入的時間數據先轉換成區間模式,然后對區間進行遍歷,對兩組數組中的任意區間進行求交集的過程。開發者在算法中第三個空的數組,用于存放求交集的結果。
步驟4:結束求交集的過程后,算法將返回結果,并將區間轉換成時間段模式呈現到用戶的app上,此時用戶就可以接收到時間篩選的結果,用戶根據“可借用時間長短”、“可借用時間先后”等關鍵詞進行排序,獲得自己理想的篩選結果。
有益效果:
1.本發明與市場中的公共自行車租賃系統有明顯的區別,本發明的自行車共享系統貫徹的是“共享經濟”的理念,旨在對生活中閑置的自行車進行再利用,通過共享的方式令更多市民能夠在任意時刻有車可選,有車可騎,達到物盡其用的效果,既能夠降低運營成本,同時對緩解交通壓力也起到了幫助。
2.基于此共享系統的算法正是從自行車的利用率入手,針對如今公共自行車與市民出行需求供需不平衡問題,利用數學中的區間交并的思想,提出了時間篩選算法的實現方法。不僅實現了用戶選擇目標自行車的智能化與多元化,同時也能夠實現自行車使用的碎片化,起到提高自行車利用率的效果,降低了自行車共享系統建設運營成本。
附圖說明
圖1為本發明的方法流程圖。
具體實施方式
本發明是將用戶輸入的時間重合度以數學層面的區間取交集的方法進行篩選,因此,這里的核心算法就可以轉變為求區間的交集。
首先我們需要將時間點表示成為數字模型,我們采取24小時制,例如早晨8點30分記為(0)830,下午4點15分記為1615,這樣所有車主或者用戶在app中設置的時間段我們都可以用數字區間表示。這樣算法可以將用戶與車主輸入的時間段以區間的形式分別保存在兩個數組中進行下一步操作。
接下來介紹區間求交集的思路:我們令a,b分別為用戶與車主設置的時間區間線,分別用于存儲每一位用戶以及車主在e-rental客戶端中輸入的使用與可租借自行車的時間段。并在兩條時間線下添加了時間軸來體現車主與用戶所設置時間段的長度與端點。
設置一條時間傳感線,這條線是假想的,我們可以把這條線想象是一個傳感器,它能分別統計a,b兩條時間線中的任意一個區間穿過它自身多少個時間點,進而我們通過穿過線的點的個數來判斷是否區間重合。我們得出結論,當穿過線的點多余一個的時候(必須有兩個點,一個來自a,一個來自b),此時認定區間重合,當這些點慢慢積累成為一個區間,就是我們最后得到的兩個區間的交集,即用戶使用自行車時間段與車主自行車可供租借時間段的重合時間段。
本發明區間求交集的實現過程包括如下:
本發明解決如今市場中的傳統的公共自行車租賃軟件系統自行車利用率低,供需關系緊張,自行車管理繁雜,運營成本高等問題,該方法的自行車共享系統將用戶輸入的借車時間段以區間的形式表示;以區間取交集的方法得到任意用戶與車主設立時間段的重合時間段;最后返回重合的時間段,并根據用戶的要求進行排序。根據此篩選算法,不僅緩解了傳統公共自行車租賃系統巨額運營成本,低普及率,低利用率的問題,同時實現了隨時隨地借車的功能,令借車更加快捷與智能,改善了用戶體驗,體現了“物盡其用”的綠色消費觀,貫徹了“共享經濟”的先進理念,順應了時代的潮流。