DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

DevioLab підбирає стратегії, відстежує ринки та автоматизує купівлю і продаж активів. Кількість доступних криптовалют, акцій і торгових можливостей зростає щодня.

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Моделювання представлення в пам’яті векторів і таблиць

Оригінальна назва роботи

МОДЕЛЮВАННЯ ПРЕДСТВАЛЕННЯ В ПАМ’ЯТІ ВЕКТОРІВ І ТАБЛИЦЬ

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних наук та інформаційних технологій
Факультет:
Комп’ютерні науки
Кафедра:
Кафедра інформаційних систем та мереж

Інформація про роботу

Рік:
2013
Тип роботи:
Лабораторна робота
Предмет:
Теорiя алгоритмiв i математичнi основи представленння знань
Група:
КН-31
Коротко про документ

Про що ця робота

У лабораторній роботі досліджено способи економного зберігання розріджених матриць у пам'яті комп'ютера. Розроблено алгоритм перетворення елементів матриці в координати та проведено порівняння часу виконання програми.

У роботі розглядаються

  • Структури даних
  • Розріджені матриці
  • Економне зберігання в пам'яті
  • Алгоритми та програмування
  • Мова програмування C
  • Аналіз часу виконання

Зміст і розділи

  1. Мета роботи
  2. Завдання
  3. Опис алгоритму
  4. Блок-схема алгоритму
  5. Реалізація програми в мові С
  6. Код програми
  7. Виведення результатів
  8. Таблиця затрат часу на виконання
  9. Висновок
Для кого:Студенти технічних спеціальностей та викладачі дисциплін пов'язаних з програмуванням та структурами даних.
Викладачі:Не вказано

Ключові поняття

таблицярозріджена матрицяпам'ятькоординатиалгоритмчас виконаннямова Cгенерація випадкових чиселекономне збереження

Частина тексту файла (без зображень, графіків і формул):

МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ ,,ЛЬВІВСЬКА ПОЛІТЕХНІКА’’ Кафедра інформаційних систем та мереж / Лабораторна робота №1 на тему: МОДЕЛЮВАННЯ ПРЕДСТВАЛЕННЯ В ПАМ’ЯТІ ВЕКТОРІВ І ТАБЛИЦЬ Мета роботи: Набуття навичок розміщення в пам’яті векторів і таблиць. Завдання Розробити спосіб економного зберігання в пам’яті розріджених матриць(таблиць). Розробити процедури і функції для забезпечення доступу (читання-запис) до елементів матриці. Оцінити час виконання операцій. № варіанту індивідуального завдання 10. Всі нульові елементи розміщені в шаховому порядку, починаючи з 1-го елементу 1-ї стрічки. Опис алгоритму: В даній лабораторній потрібно створити розріджену матрицю, яка б містила лише 0 або 1. Далі потрібно розробити метод економного зберігання, потрібних елементів. В даній лабораторній роботі я використовую метод перетворення елементів матриці в координати. Перебираючи рядки матриці, алгоритм виводить лише координати ненульових елементів, для економнішого зберігання. Блок-схема алгоритму Ні Так Реалізація програми в мові С Код програми //Matrix.cpp #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <ctime> #define MAX 100 void main() { srand(time(0)); int a[MAX][MAX]; int i,j,s,r; int t1, t2; printf("Розмiрнiсть:\n"); scanf_s("%d%d",&r,&s); printf("Згенерована матриця розмiром [%dx%d]\n",r,s); t1=clock(); for(i=0 ;i<r; i++) { printf("\n"); for(j=0; j<s; j++) { a[i][j]=rand()%2; printf(" %d", a[i][j]); } } printf("\n\n"); for(i=0; i<r; i++) for(j=0; j<s; j++) { if (!((i+j) % 2==0)) //Якщо елемент непарний, пропускаємо його if (a[i][j] != 0) printf("<%d,%d>", i+1, j+1); } printf("\n\t"); t2=clock(); printf("\nЧас виконання програми:%ld ms\n", t2-t1); _getch(); } Виведення результатів Даний алгоритм було використано для матриць розмірів 10х10 та 100х100. Різниця в часі виконання була не суттєвою (1.92 секунди) . / Рис 1. Виконання на матриці 10х10 / Рис 2. Виконання на матриці 100х100 Таблиця затрат часу на виконання Час Для матриці 10х10 Для матриці 100х100 Різниця  t1 16 мс. 1950 мс. 1934 мс.  t2 17 мс. 1948 мс. 1931 мс.  t3 19 мс. 1911 мс. 1892 мс.   Середня різниця часу складає 1919 мс. – 1.92 секунди. Висновок: в даній лабораторній роботі я навчився зберігати в пам’яті вектори та таблиці. Для економного збереження матриць я використав спосіб зберігання координат потрібних елементів. Різниця в часі виконання між матрицями 10х10 та 100х100 була не суттєвою – 1.92 секунди. При зчитуванні даних з файлу, час зменшувався лише на декілька мілісекунд: для матриці розміром 10х10, приблизно на 15 мілісекунд, а для матриці 100х100 – 250 мілісекунд. Отже, я вважаю цей спосіб збереження – економним.
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!