- Очередь приоритетов.
Очередь приоритетов — это структура данных, в которой хранятся элементы со связанными приоритетами. Элементы с более высоким приоритетом удаляются из очереди в первую очередь. Вот пример использования приоритетной очереди в Python:
import queue
# Create a priority queue
pq = queue.PriorityQueue()
# Add elements with priorities
pq.put((3, 'Task 1'))
pq.put((1, 'Task 2'))
pq.put((2, 'Task 3'))
# Get and process elements in priority order
while not pq.empty():
priority, task = pq.get()
print(f'Processing task: {task}')
- Взвешенная оценка.
Взвешенная оценка включает в себя присвоение весов различным критериям и выставление оценок на основе этих критериев. Более высокие баллы указывают на более высокий приоритет. Вот пример Python:
tasks = [
{'name': 'Task 1', 'priority': 0.8, 'effort': 5},
{'name': 'Task 2', 'priority': 0.6, 'effort': 2},
{'name': 'Task 3', 'priority': 0.9, 'effort': 3},
]
# Calculate scores
for task in tasks:
score = task['priority'] * task['effort']
task['score'] = score
# Sort tasks based on scores
sorted_tasks = sorted(tasks, key=lambda x: x['score'], reverse=True)
# Process tasks in order
for task in sorted_tasks:
print(f'Processing task: {task["name"]}')
- Матрица Эйзенхауэра.
Матрица Эйзенхауэра делит задачи на четыре квадранта в зависимости от важности и срочности. Вот пример Python со списком задач:
tasks = [
{'name': 'Task 1', 'importance': 'High', 'urgency': 'High'},
{'name': 'Task 2', 'importance': 'Low', 'urgency': 'High'},
{'name': 'Task 3', 'importance': 'High', 'urgency': 'Low'},
{'name': 'Task 4', 'importance': 'Low', 'urgency': 'Low'},
]
# Sort tasks based on importance and urgency
sorted_tasks = sorted(tasks, key=lambda x: (x['importance'], x['urgency']), reverse=True)
# Process tasks in order
for task in sorted_tasks:
print(f'Processing task: {task["name"]}')