Map [1]
| Operation | Time Complexity |
|---|---|
| Access | O(log n) |
| Search | O(log n) |
| Insertion | O(n) for < 32 elements, O(log n) for >= 32 elements [2] |
| Deletion | O(n) for < 32 elements, O(log n) for >= 32 elements |
| import {Observer} from 'rxjs/Observer'; | |
| import {BehaviorSubject} from 'rxjs/BehaviorSubject'; | |
| interface IFilter { | |
| name: string, | |
| tags: CollectionMatcher | |
| } | |
| export class FilterService { | |
| private _filters = new BehaviorSubject<IFilter>({ |
| // Built from Mohit Cheppudira's sine wave generator - http://0xfe.blogspot.com | |
| // Modified by Murat Ayfer - http://muratayfer.com | |
| // Modified by Mika Kalathil | |
| var ON = 450; | |
| var OFF = 550; | |
| var soundWave = function(context) { | |
| // xs is a list of x (time) values, one per wave. | |
| // time is not represented as synchronized clicks or milliseconds, its passing is freq dependent | |
| // so that's why we keep a value per each wave. |