An Entity of Type: Thing, from Named Graph: http://dbpedia.org, within Data Space: dbpedia.org

In computer programming, the act of swapping two variables refers to mutually exchanging the values of the variables. Usually, this is done with the data in memory. For example, in a program, two variables may be defined thus (in pseudocode): data_item x := 1data_item y := 0swap (x, y); After swap is performed, x will contain the value 0 and y will contain 1; their values have been exchanged. This operation may be generalized to other types of values, such as strings and aggregated data types. Comparison sorts use swaps to change the positions of data.

Property Value
dbo:abstract
  • Prohození hodnot je úlohou z oboru programování, jejímž cílem je prohodit hodnoty dvou proměnných, tedy obvykle vyměnit dvě hodnoty na různých pozicích v operační paměti. Objevuje se jako podúloha například v řadicích algoritmech. Některé programovací jazyky mají pro tuto operaci vestavěnou standardní funkci (obvykle pojmenovanou v angličtině stručně swap) a některé instrukční sady mají pro tuto operaci zvláštní strojovou instrukci, ale někdy ji programátor musí implementovat nově. (cs)
  • Als Dreieckstausch bezeichnet man in der Programmierung ein Verfahren zum Austausch der Werte zweier Variablen. Dabei wird eine Hilfsvariable verwendet, um den Wert der Variablen, die zuerst überschrieben wird, zwischenzuspeichern. Ein typischer Anwendungsfall des Dreieckstauschs besteht zum Beispiel in einigen Sortieralgorithmen wie dem Bubblesort. (de)
  • En programmation informatique, une permutation consiste à intervertir les valeurs de deux variables. Il s'agit d'une opération courante, mais rarement intégrée aux langages de programmation et jeu d'instructions des processeurs. De nombreux algorithmes, en particulier des algorithmes de tri, utilisent des permutations. (fr)
  • In computer programming, the act of swapping two variables refers to mutually exchanging the values of the variables. Usually, this is done with the data in memory. For example, in a program, two variables may be defined thus (in pseudocode): data_item x := 1data_item y := 0swap (x, y); After swap is performed, x will contain the value 0 and y will contain 1; their values have been exchanged. This operation may be generalized to other types of values, such as strings and aggregated data types. Comparison sorts use swaps to change the positions of data. In many programming languages the swap function is built-in. In C++, overloads are provided allowing std::swap to exchange some large structures in O(1) time. (en)
  • 컴퓨터 프로그래밍에서 교체 연산(swap) 또는 스왑 알고리즘(swap algorithm)은 두 변수에 들어 있는 값을 서로 맞바꾸는 연산 또는 이러한 연산을 사용하는 알고리즘이다. 예를 들어 만약 변수 a와 b에 각각 2와 3이라는 정수 값이 들어 있을 때, swap (a, b) 라는 명령을 실행하면 두 변수의 값은 각각 3과 2로 변한다. 교체 연산은 많은 알고리즘들에서 사용된다. 대표적으로 많은 정렬 알고리즘은 값들의 순서를 바꾸기 위해 교체 연산을 사용한다. 여러 프로그래밍 언어는 교체 연산을 위한 명령을 지원하며, 일부 언어는 언어의 일부가 아닌 표준 라이브러리를 통해 이 기능을 지원한다. (예를 들어 C++의 std::swap) 자바와 같이 변수에 대한 교체 연산을 언어의 일부로도 지원하지 않으며, 참조와 같은 언어 기능이 없어서 함수를 통해 구현할 수 없는 경우도 존재한다. (ko)
  • Um Algoritmo de Trocas Convencional é um método bastante usado em programação para trocar o valor de duas variáveis. Ele consiste nos seguintes passos quando usado em uma variável X e uma variável Y: * 1 - Copie o conteúdo da variável X para uma variável temporária. * 2 - Copie o conteúdo de Y para X * 3 - Copie o conteúdo da variável para Y Ao término do algoritmo, X passará a possuir o valor original de Y e Y passará a ter o valor original de X. Este é o algoritmo de troca mais simples e natural que existe. É o mesmo algoritmo que usamos na vida real para trocar a posição de dois elementos quaisquer. Este algoritmo sempre realiza 3 operações. Logo, sua complexidade é constante. (pt)
  • W informatyce często zachodzi potrzeba zamiany wartości dwóch zmiennych (ang. swap). Standardowy, prawie zawsze używany algorytm zamiany wymaga chwilowego kopiowania jednej ze zmiennych: funkcja swap(zmienna a, zmienna b) { zmienna c:=a; a:=b; b:=c; } Możliwa jest także zamiana zmiennych bez użycia tymczasowej zmiennej. (pl)
  • Идиома copy-and-swap — это идиома языка программирования C++, позволяющая разрабатывать устойчивые к исключениям операторы присваивания. Идиома базируется на идиоме «Получение ресурса есть инициализация». Идиома предполагает реализацию следующих функций-членов класса: * конструктора копирования; * оператора присваивания; * метода swap, не генерирующего исключения и принимающего ссылку на объект класса. Пример: class Copyable {public: Copyable& operator=(const Copyable &_v) { Copyable tmp(_v); this->swap(tmp); return *this; } void swap(Copyable &_v) noexcept;}; Устойчивость к исключениям заключается в том, что в операторе присваивания Copyable& operator=(const Copyable &) нет точки, где генерация исключения могла бы привести к утечке памяти. Оператор присваивания сначала пытается захватить ресурс «временная копия присваиваемого объекта» (tmp) и в случае успеха меняет его содержимое с содержимым текущего объекта (this). Поскольку метод swap объявлен как не генерирующий исключения (noexcept), единственной точкой, где может возникнуть исключение, является копирование объекта _v. Если копирование не удается, то управление не доходит до метода swap, в противном случае деструктор объекта tmp освобождает ресурсы, прежде принадлежавшие текущему объекту (this) (см. идиому RAII). Приведённая выше реализация также устойчива к присваиваниям объекта самому себе (a=a), однако содержит издержки, связанные с тем, что временная копия в этом случае тоже будет создаваться. Исключить издержки можно дополнительной проверкой: class Copyable {public: Copyable& operator=(const Copyable &_v) { if(this != &_v) Copyable(_v).swap(*this); return *this; } void swap(Copyable &_v) noexcept;}; Многие контейнеры и алгоритмы стандартной библиотеки C++ и библиотеки STL предполагают наличие устойчивого к исключениям оператора присваивания, но без использования идиомы copy-and-swap иногда довольно сложно реализовать такой оператор присваивания для классов, содержащих, например, указатели на экземпляры других классов. (ru)
  • О́бмін (англ. swap), в інформатиці — операція для обміну значень аргументів. Наприклад: Маємо дві змінні A та B.До виконання операції маємо наступний : A=1, B=2. Після виконання операції swap (A,B) стан пам'яті змінюється на такий: A=2, B=1. (uk)
dbo:wikiPageID
  • 6067549 (xsd:integer)
dbo:wikiPageLength
  • 7685 (xsd:nonNegativeInteger)
dbo:wikiPageRevisionID
  • 1100538314 (xsd:integer)
dbo:wikiPageWikiLink
dbp:wikiPageUsesTemplate
dcterms:subject
rdf:type
rdfs:comment
  • Prohození hodnot je úlohou z oboru programování, jejímž cílem je prohodit hodnoty dvou proměnných, tedy obvykle vyměnit dvě hodnoty na různých pozicích v operační paměti. Objevuje se jako podúloha například v řadicích algoritmech. Některé programovací jazyky mají pro tuto operaci vestavěnou standardní funkci (obvykle pojmenovanou v angličtině stručně swap) a některé instrukční sady mají pro tuto operaci zvláštní strojovou instrukci, ale někdy ji programátor musí implementovat nově. (cs)
  • Als Dreieckstausch bezeichnet man in der Programmierung ein Verfahren zum Austausch der Werte zweier Variablen. Dabei wird eine Hilfsvariable verwendet, um den Wert der Variablen, die zuerst überschrieben wird, zwischenzuspeichern. Ein typischer Anwendungsfall des Dreieckstauschs besteht zum Beispiel in einigen Sortieralgorithmen wie dem Bubblesort. (de)
  • En programmation informatique, une permutation consiste à intervertir les valeurs de deux variables. Il s'agit d'une opération courante, mais rarement intégrée aux langages de programmation et jeu d'instructions des processeurs. De nombreux algorithmes, en particulier des algorithmes de tri, utilisent des permutations. (fr)
  • 컴퓨터 프로그래밍에서 교체 연산(swap) 또는 스왑 알고리즘(swap algorithm)은 두 변수에 들어 있는 값을 서로 맞바꾸는 연산 또는 이러한 연산을 사용하는 알고리즘이다. 예를 들어 만약 변수 a와 b에 각각 2와 3이라는 정수 값이 들어 있을 때, swap (a, b) 라는 명령을 실행하면 두 변수의 값은 각각 3과 2로 변한다. 교체 연산은 많은 알고리즘들에서 사용된다. 대표적으로 많은 정렬 알고리즘은 값들의 순서를 바꾸기 위해 교체 연산을 사용한다. 여러 프로그래밍 언어는 교체 연산을 위한 명령을 지원하며, 일부 언어는 언어의 일부가 아닌 표준 라이브러리를 통해 이 기능을 지원한다. (예를 들어 C++의 std::swap) 자바와 같이 변수에 대한 교체 연산을 언어의 일부로도 지원하지 않으며, 참조와 같은 언어 기능이 없어서 함수를 통해 구현할 수 없는 경우도 존재한다. (ko)
  • W informatyce często zachodzi potrzeba zamiany wartości dwóch zmiennych (ang. swap). Standardowy, prawie zawsze używany algorytm zamiany wymaga chwilowego kopiowania jednej ze zmiennych: funkcja swap(zmienna a, zmienna b) { zmienna c:=a; a:=b; b:=c; } Możliwa jest także zamiana zmiennych bez użycia tymczasowej zmiennej. (pl)
  • О́бмін (англ. swap), в інформатиці — операція для обміну значень аргументів. Наприклад: Маємо дві змінні A та B.До виконання операції маємо наступний : A=1, B=2. Після виконання операції swap (A,B) стан пам'яті змінюється на такий: A=2, B=1. (uk)
  • In computer programming, the act of swapping two variables refers to mutually exchanging the values of the variables. Usually, this is done with the data in memory. For example, in a program, two variables may be defined thus (in pseudocode): data_item x := 1data_item y := 0swap (x, y); After swap is performed, x will contain the value 0 and y will contain 1; their values have been exchanged. This operation may be generalized to other types of values, such as strings and aggregated data types. Comparison sorts use swaps to change the positions of data. (en)
  • Идиома copy-and-swap — это идиома языка программирования C++, позволяющая разрабатывать устойчивые к исключениям операторы присваивания. Идиома базируется на идиоме «Получение ресурса есть инициализация». Идиома предполагает реализацию следующих функций-членов класса: * конструктора копирования; * оператора присваивания; * метода swap, не генерирующего исключения и принимающего ссылку на объект класса. Пример: class Copyable {public: Copyable& operator=(const Copyable &_v) { Copyable tmp(_v); this->swap(tmp); return *this; } void swap(Copyable &_v) noexcept;}; (ru)
  • Um Algoritmo de Trocas Convencional é um método bastante usado em programação para trocar o valor de duas variáveis. Ele consiste nos seguintes passos quando usado em uma variável X e uma variável Y: * 1 - Copie o conteúdo da variável X para uma variável temporária. * 2 - Copie o conteúdo de Y para X * 3 - Copie o conteúdo da variável para Y Este algoritmo sempre realiza 3 operações. Logo, sua complexidade é constante. (pt)
rdfs:label
  • Prohození hodnot (cs)
  • Dreieckstausch (de)
  • Permutation (informatique) (fr)
  • 교체 연산 (ko)
  • Algoritmo de troca convencional (pt)
  • Zamiana wartości zmiennych (pl)
  • Swap (computer programming) (en)
  • Copy-and-swap (ru)
  • Обмін (інформатика) (uk)
rdfs:seeAlso
owl:sameAs
prov:wasDerivedFrom
foaf:isPrimaryTopicOf
is dbo:wikiPageDisambiguates of
is dbo:wikiPageRedirects of
is dbo:wikiPageWikiLink of
is foaf:primaryTopic of
Powered by OpenLink Virtuoso    This material is Open Knowledge     W3C Semantic Web Technology     This material is Open Knowledge    Valid XHTML + RDFa
This content was extracted from Wikipedia and is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License